Overview

 PSPad Editor

Do you work in different programming environments ?

Do you like syntax highlighting in your code ?

Do you need small tool with simple controls and the capabilities of a mighty code editor ?

Are you looking for a tool for work with plain text files ?

Do you want to save money and still have functionality of professional products ?

If you have answered 'YES' to any of the above questions, then PSPad may be for you.

pspad1

What do you get if you choose PSPad editor ?

· Projects. Create project files to organise your work that can include multiple sub-folders and automatic file name sorting. Create projects based on all of the files in directory.
· Work with files of unlimited length.
· Work on several documents at the same time.
· Save desktop session so you can resume your work exactly where you left off.
· Built-in FTP client so you can edit your files directly over the Internet.
· Macro recorder so you can record, save and playback commonly used sequences.
· Search and replace not just in your active file, but also in all open files or all files in a project.
· View file differences with color highlighting.
· Clips. Using clips you can have snippets of code at your fingertips. Create your own clips and never forget the syntax of the function call again. Clips can be interactive allowing you to generate code quickly and efficiently. Installation contains clip files for HTML, PHP, Pascal, JScript, VBScript, MySQL, MS-Dos, Perl, and many more.
· Syntax highlight. Highlighting can be set by file type. Highlighting is user-configurable.
· Create syntax highlighters for your own exotic environments
· Auto correction.
· Spell checking
· Full HEX editor
· Call external programs to operate on or with your file. Different sets of programs can be defined for each file type.
· Call an external compiler. Create different compiler settings for each file type. Calls to compiler send output to log window. A configurable log parser allows you to pinpoint compile errors quickly.
· Colour syntax highlighted print with print preview.
· Export with highlighting to RTF, HTML, TeX to file or clipboard.
· Column block select
· Bookmarks
· Line numberering.
· Refomat and compress HTML code, change case of tags.
· 'Pretty-print' HTML code, converty to XML, XHTML using TiDy.
· Line sorting with the ability to sort on defined column, with the option to drop duplicates.
· ASCII chart with HTML entities
· Code explorer for Pascal, INI, HTML, XML, PHP and more.
· Internal web browser
· Matching bracket highlighting


Whats new

 News and History

Legend :
· Added
· Removed
· Corrected

Version 4.3.1 date 26 August 2004
· user highlighter definition (include clips) for R (Nick Drew)
· PHP5 keywords added into PHP highlighter
· first CSS code explorer version - required structured CSS
· search in project tree with writing file name
· open file appointed by selection - opens for PSPad unknown file in default application
· show color function - added mixer possibilities
· added user highlighter for FLEX
· new comment style in user highlighter *...;
· program settings - new button Direct edit - you can direct edit PSPad.INI from PSPad
· new parameter in [Special settings] - DontChangeFileAttribs - disables file attributes manipulation for PSPad
· new parameter in [Special settings] - AutoDetectBinary - enables binary file autodetection
· new function - Repead last command in menu tool
· user highlighters - new comment style { for PocoScript
· new option in program settings / tools - Sort Code Explorer results alphabetically
· Code parsing internaly rewrited to use regular expressions
· n user highlighter definition you can specify chars to be part of keywords
· open file appointed by selection looks for files in project too (usefull if path missing)
· program settings / system - new parameter - switch off PSPad Hex in context menu (possibility to open binary file in editor will be soon)
· program settings / files - new parameter - always open selecteded file type as new file
· CHMOD command added into FTP context menu
· new nonvisual parameter OpenAllReadOnly - possibility to open all files in R/O mode
· user highlighter has now 4 ections for keywords
· new option in Program settings / Files - Store for files from local drives only
· Class support in PHP Code Explorer (first version)
· Eye dropper - move with cursors
· Enter in Clipboard monitor inserts selected items
· Extended function Swap lines - if you use it on selected block, all lines in block are swaped
· new section [Special settings] in PSPad.INI, available only with manually editing. PSPad.INI isn't possible to edit direct in PSPad !
· highlighter detection - enebled highlighters are preffered before disabled
· rewrited Code explorer for LaTeX
· File Explorer remebers File name width
· new tab on Project panel - open file list
· into external file is sent selected text if available
· Find in Files dialog - you can insert actual file path with new button
· New empty file on the FTP with context menu in FTP
· for HTML files bigger 500kB is used simple HTML highlighter instead HTML multihighlighter - speed load
· with shortcuts ALT+n (n=1..9) you can switch file tabs
· Code explorer for VB Script
· if program is run with /H /nnn parameter, position in Hex editor is set to nnn
· in function Clip from selection you can insert chars | and § with click on the label
· in FTP connection settings you can import accounts from WS FTP (change filter type in dialog)
· Find in Files - file mask is allways available
· Editor component function ecInsertLine inserts line only without break of active line
· new version of FTP parsing - please report all problems
· in FTP connection settings you can choose binary or ASCII transfer mode
· in search dialog added regular expression examples
· for Convert tabs to spaces you can manually enter TAB width
· code explorer for TCL/TK
· updateded KixStart highlighter
· first version of LaTeX document explorer
· into external file is sent selected text if available
· Find in Files dialog - you can insert actual file path with new button
· New empty file on the FTP with context menu in FTP
· for HTML files bigger 500kB is used simple HTML highlighter instead HTML multihighlighter - speed load
· with shortcuts ALT+n (n=1..9) you can switch file tabs
· Code explorer for VB Script
· if program is run with /H /nnn parameter, position in Hex editor is set to nnn
· in function Clip from selection you can insert chars | and § with click on the labelextended MS-Dos BAT highlighter (Echo, Label)
· new version of FTP parsing - please report all problems !!!
· in FTP connection settings you can choose binary or ASCII transfer mode
· in search dialog added regular expression examples
· for Convert tabs to spaces you can manually enter TAB width
· code explorer for TCL/TK
· updateded KixStart highlighter
· dded Croatian localization (Mladen Mintakoviæ)
· in Program settings / Files you can set durectory where you want store local copy of files from FTP
· dialogs for Color, Clip monitor, ASCII remember undocked window position
· into project yuou can add all open files (menu Project or context project menu)
· added autodetection of binary files
· optimalization memory and GDI if PSPad is minimized to Tray
· Char case change or reformat block preserve block selection
· new commnet style in User highlighter $(..)$ a $*
· changed word count algorithm in File Information. Now is limited with 50 000 unique words in file
· added highlighting of &tilde; and &Yuml; in HTML highlighter
· enabled HTML compression for HTML
· program hang after Select Tag in file without tags
· wasn't possible open UNICODE file if doesn't contain BOM bytes
· open FTP file containing unallowed chars
· code Explorer and PHP with specific comments
· corrected problem with animated GIFs in Clip dialog
· problems with noncorect tabs after Save All
· corrected ESC chars in JavaScript strings
· highlighting PHP with string, containing "\$xxx"
· after file delete with context menu in File Explorer PSPad doesn't stay as active application
· Resolve color, if cursor stay before ";"
· Goto Line doesn't actualize status line information
· HTML multihighlighter - "?>" in code break PHP highlighting
· SQL highlighter with Interbase dialect causes exception
· parameter with %SelText% variable in external applications
· goto bookmark with Alt+Up/Down doesn't respect cursor result in program settings
· if file was opened from FTP, dblclick in FTP dialog rewrite file without warning
· Code explorer for INI shows tabs as squares
· Reopen of file loaded from FTP didn't reload it from FTP
· after project load was't activated clips hotkeys
· UNICODE file was in some cases detected as binnary file
· if PSPad was running and you open file with line number > 99
· redundant backgroung color in export into XHTML
· close nonactive file tab - bad file tab was selected
· corrected Chinese language detection
· Code Explorer for Perl cut off char from function name
· search in files - line number doesn't corespond if WordWrap
· corrected HTML reformat with PHP code
· add/remove comments sometimes cut off char from line without comment on the begin
· solved problem with long file name as parameter without doublequotes
· bug in File Explorer if you enter first char of nonexits File name
· HTML multihighlighter - "?>" in code break PHP highlighting
· corrected Chinese language detection
· Code Explorer for Perl cut off char from function name
· search in files - line number doesn't corespond if WordWrap
· corrected HTML reformat with PHP code
· add/remove comments sometimes cut off char from line without comment on the begin
· solved problem with long file name as parameter without doublequotes
· file size for files bigger than 2GB in File Explorer
· lines start with "c" are accepted as comments in Fortran too
· SendTo check box in program settings doesn't accept actual state
· external application and %SelText% variable
· tuning of Code explorer for Java
· missing keywords for Fortran Highlighter
· broken Reopen function
· Eye dropper doesn't put colors in RGB although it was set in Settings / HTML tools
· Last file change doesn't respect Time zones
· hang-up in Code Explorer in plain text file
· User Highlighter and case sensitive keywords
· Numeric Base Calculator - paste negative number from clipboard
· added check FTP connection before FTP file save
· reformat CSS to structured changes style name to lower case
· code explorer refresh during switching
· many little bugs
· HEX editor / Goto dialog - disabled lowercase letters
· change CP in Find in Files dialog disabled "Whole words only" option
· HEX editor doesn't make backups
· Code Explorer collapses
· Option save recent from Local drives only wasn't saved
· PSPad freezes for some fonfiguration in User Highlighters
· some correction if long file name as parameter wasn't enclosed in doublequotes
· PHP highlighter and highlighting variables in apostrophe strings
· Drag/drop directory to PSPad
· wasn't possible call context menu via standard Shift+F10 in editor
· exception if pspad was run as minimized and direct closed
· even file was R/O, was possible to drag/drop text into editor

Version 4.3.0 date 5 May 2004
· Auto Refresh and SaveAs added to file tab Right click menu
· FTP client - sort by window title click
· new localization - Turkish (Cemal Dogan)
· User convertors - added button for modifying
· new user highlighter for Clarion (Nelson A. H. de Carvalho)
· MD5 fingerprint can compare existing MD5
· into CSS you can insert color in format rgb(r,g,b) - format is in Program settings / WWW Tools
· project info dialog - dblclick or Enter - file info
· right mouse menu in project - add file info
· right from menu you can edit config files for Online help and tools, TiDy, WWW tools,...
· new menu style - in program settings you can switch it off - it can be slow on old computers
· import FTP settings from Total Commander
· added new variable %Line% - line number
· new FTP code version (same author) - report me know problems
· new button with tools in HTML preview
· variable %Word% is ready to use in Link panel too
· new HEX editor component version (you can change size with Ctrl+Wheel or Shift+Ctrl+Wheel)
· R/O files are indicated by other color in FileExplorer
· drag/drop image into CSS
· FTP shows hidden files too
· show color works with short form #RGB
· new function - expression evaluator (available function list will be in help)
· in CSS are words selected include "-"
· Insert from file - available multiselect in dialog - you can insert more then 1 file
· new HTML conversion function - Selection to PHP variable
· Documentation comments in JAVA, C, ... - modified behaviour
· if word select with DblClick, next Shift+Click select whole word
· Find dialog remembers (o) Entire Scope option
· in Project settings you can specify own Document Root and Web Server name
· new Sentensize char case conversion
· new FTL list window
· changed format for Text to Java conversion
· new Interactive template control for horizontal line: @--
· Status bar shows position on LOG window too
· new tool MD5 finger print - creates MD5 from text or file
· added tool button for CodeExplorer
· you can change language by dblclick or Enter key in Language list
· new variable %PSPath% available for external help
· in Windows SendTo context menu added PSPad HEX editor link
· macro recording behaviour - after record is F5 (or what you have set) automatically assigned to new macro
· rewrited C++ code parser for Code explorer - increase speed
· New parameter in program settings / editor settings - number of line for Mouse wheel
· program settings dialog completly rewrited
· if you edit and save Online.INI, PSPad menu for online help and tools is reinicialized
· changed Add/Remove comments behavour
· standalone HEX editor settings was integrated into program settings
· HTML preview on CSS file opens this file egain and again
· error if language file is empty
· was possible run Spell check without dictionary
· Code Explorer has problem in some HTML code
· error message during Project file saving
· PasswordChar and Traditional Chinese environment
· Resolve color - in some cases add double quote behind HTML color
· Code explorer for Java doesn't allow accent chars in obejct name and properties
· with CSS document wasn't available CSS tools from menu HTML
· some corrections in FTP client - let me know
· Code Explorer improved for GNU C syntax
· Code Explorer improved for JAVA
· printing selected text with text contains real tabs
· FTP for Sun AIX server
· Clip files - sometime lost shortcuts
· New document with only several highlighter enabled
· LOG windows width problem
· disconected FTP and click in FTP list
· switching project doesn't set correct file TAB
· problem with last localized month in FTP connection settings
· unregister file type deletes assigned PSPad icon
· if MultiUser environment, ErrorLog is stored in User profile
· quick typing in File Explorer filter
· Drag/Drop more files on PSPad link or Send To
· template from block (Shift+Ctrl+Space)
· Import from CSV - exception if source file was locked by other app
· some correction in Code Explorer with PHP, HTML, XHTML
· new file opens HTML files in multihighlighter
· variables in Online Tool was case sensitive
· wasn't possible to open file with 0B length
· after TopStyle CSS editation bookmarks are restored
· CSS reformat - spaces before colon
· HTML reformat - problems with script in some cases
· File Explorer - sort files by type
· last CrLf is saved and open as is in file - no other settings
· dblclick in LOG window in some casses opens bad file
· Color Translator in empty line
· switch to HEX mode with empty file
· Code Explorer - problems with //** comments in C++
· MySQL highlighting
· Expression evaluator and no file open
· password in FTP LOG is masked by *****
· FTP connect to other port than 21 (server:port)
· corrected new Macro assign to F5 key
· cannot rename FTP file with '.' on the begin of filename
· variable %PSPath% doesn't work in link panel
· select inside bracket in non HTML code
· OPERA 75 integration
· switch into HEX view in empty file
· Total Commander integration and disabled ini file writing
· Numeric base caculator - day has 60 hours :-(
· closing PSPad - if file can't be saved, PSPad doesn't close
· Code explorer for C++
· FTP directory delete
· corrected Notepad.EXE wraper - long file name nonclosed in double quote
· Code explorer and INI files - if on the begin wasn't section
· dblclick select word with underscore in plain text too
· clip list and problem with non europe fonts
· Find dialog List function and lines with length > 1024 chars
· use convertor can contain spaces on the begin of strings
· error reading file from FTP if server variable incudes port (server:port)
· WordWrap and setting right edge under 0

Version 4.2.9 date 16 Feb 2004
· Online Tools - A new menu item in HELP menu
· Added Catalan localization (thanks to Antoni Clavell) + spell check dictionary
· New dialog to set HEX editor options on the Settings menu.
· Ctrl+TAB switches between 2 last windows. Active only if Smart File option is set in Settings / Program Settings/ Program.
· New German spell check dictionary
· If you edit file direct in HEX editor, you can switch line length (16B, 32B, 64B, 128B)
· In FTP connection settings you can set localized month names
· Added question before deleting history (in Settings / Program Settings). Search history is deleted too.
· Windows switching - if you keep Ctrl pressed, windows are switched continuously, in other case you switch between last used windows (When Smart FIle Switching is enabled)
· New version of spell check dictionaries (Czech, Slovak, English) - download from PSPad download page.
· You can use multiselect on the recent tab of the New File dialog.
· Added Netherlands localization (Thanks to Petyr)
· In Settings Program settings / Editor you can switch off middle mouse button for clip list
· Tools / Special converters was moved into Edit / Special Conversion
· Added select directory button for Documen tRoot in Settings / Program Settings / Internet
· Added system variable %PSPad% with PSPad version and build
· New buttons added on FTP LOG panel. You can see LIST direct from FTP and possibility to mail FTP LOG
· Standard context menu added to directory list in FileExplorer
· Find in Files remembers expanded state
· You can switch off icons in menu (Settings / Program Settings) to aid visually handicapped people who have problems.
· Test on the PSPad start if OS is Windows 98 and above
· Settings / Program Settings / Internet has a new option to take proxy setting from IE.
· If in only one line is selected when the command line is called from within the Editor the text is placed as the command.
· In multihighlighter it is possible to open ASP files - highlighter for <% %>
· Select all added into context menu.
· It is possible to save and load alternative key shortcut settings in Settings / Program Settings / Key Mapping.
· Mozilla Internal HTML preview. If you download and install Mozilla ActiveX control (isn't as part of Mozilla Browser). You can us it for Internal HTML Previews by using the first icon on Internal Preview toolbar.
· Default settings for backup directory.
· Drag/Drop image into HTML source creates TAG <IMG...>.
· New way to display object borders (table...) in HTML preview (Zdenek Homola)
· Automatic LOG parser settings for HTML and PHP if not defined.
· Join lines - new function in menu Edit / Lines manipulation (and on the context menu too)
· Special converters - encode and decode URL and Quoted printable
· HTML preview and HTML preview web server added into main context menu.
· HTML preview web server changed to standard program action - you can change hotkey now
· Click on position in status bar shows dialog "Goto line"
· EyeDropper shows actual color and color code
· Text to HTML - document is marked as modified
· If PSPad was maximalized, after EyeDropper was restored from maximize
· Open folder files in project tree opens folders as files too
· Autosave shows dialog if new project.
· During Close folder files function nonsaved file from removed project
· Code parser doesn't work with normal "/" in file name (e.g. RUBY language)
· Highlighter settings doesn't save changed file extension.
· File explorer changes directory in some cases.
· Wasn't possible to rename project subfolder with F2.
· Problem with renaming subfolders in project tree with F2.
· Dialog New file and bigger system font size.
· Spell check icon stay active after tray minimize.
· Problems with UTF-8 coding.
· Assigning highlighter for <% %> in MultiHighlighter (Program Settings / HTML).
· Favourite panel behaviour.
· Insert from fil function - disabled multiselect in Open file dialog.
· Disabled "Save project" if no file open.
· Code explorer and XML file with wrong structure.
· ESC in clip list close PSPad instead hide list.
· Text to HTML - creates new doc with same name and .HTML extension.
· Block align stay disabled after close all docs.
· Improved highlighting of string in PHP.
· Tile window horizontal and vertical preserve minimized windows.
· Hide all panels and Show Macro panel only.
· Drag/Drop link to PSPad opens link instead document.
· Java Script preview in internal browser has .HTML extension.
· XHTML colors was not load on start if XHTML was base for Multihighlighter.
· UTF-8 problems with Unix or Mac lines.
· Internal FTP code corrections.
· Wasn't possible delete backup path in Settings / Program Settings / Files.
· If Tools are docked into left panel, panel is displayed if not visible.
· Corrected multiline File tabs in Button mode.
· Program settings saving was optimized.
· HEX editor and change highlighter.
· HEX editor - enabled Indent and Unindent block actions.
· In PHP highlighter text disappears after $ char.
· Sometimes error occurs during show template list.
· If you press Cancel in highlighter settings, program forgot user highlighter assign.
· User highlighter set wasn't seen in New file dialog until after program restart.
· HTML reformat destroy PHP formating.
· Problems with status bar info and HEX view text file.
· Import HTML - exception if another application lock source file (Word).
· Corrected Cancel button behaviour in dialog after Close All.
· Added confirmation in Save project dialog if you save over existing file.
· Delete History in program settings doesn't delete contents of Recent.INI.
· Save As in HEX editor set nonsense file attributes.
· Spell check context menu works with all words, not only "bad" words.
· Default compiler directory - program doesn't remember setting.
· Resolve color - error if comma behind color.
· Code Explorer for Java Script - bad line number in variable occurence.
· Links panel / Edit link - wasn't possible add parameter from context menu.

Version 4.2.8 date 29 Dec 2003
· Add Accent marks function works with selected text too
· PSPad instalation register TiDy library - user with limited rights can use TiDy functions
· first version of JAVA Code explorer
· EyeDropper - new function in menu tool for get color from screen pixel in HTML format
· PHP code parser - all variables, improved speed
· File information - possibility run detail statistic for big files manually
· Added 2 slots for user highlighters
· Function Select inside brackets works with char "`"
· New parametr in FTP settings - compatibility mode for old PROXY/NAT
· Programm settings / Internet - option to use default mail client
· Text to HTML - reuslt is in new window
· FTP client - possibility to send RAW command (context menu)
· Improved language detection for first PSPad run - language can be set to your environment (if available)
· Changed file saving mechanism - please report any problems
· Status line displays decimal value in the HEX editor
· You can open new file by doubleclick next file tabs
· Drag/drop from link window into editor place Command line instead link name. You can also manage your link by draging
· Modified function "open file from selected text" - you can open file without path, if path corespond to actual document
· Add/remove comments added into Unix Shell Script
· Possibility to entere general file mask (wild chars *, ?) in file explorer filter edit box
· Two new comment styles added into user highlighter definition
· Added %Input% variable - you can enter parametr before compilator or external app runs
· Code explorer expanded to XML, XHTML a RSS
· Program remembers checkbox states in Find/Replace dialog between sessions.
· Program remembers child window state (maximized) between sessions.
· It is possible to send error messages right from Error dialog.
· Environment help (Alt+F1) - you can use connect to online help. Variable %word% in URL address is replaced by current word from editor
· File Explorer - Renaiming a file in File Explorer changes the name file name tab is the file is open in the editor. It also changes the file name in the project window, where appropriate.
· Increased PSPad mail form size and enabled form resize.
· Code Explorer - you can insert selected text in cursor position or drag/drop into editor.
· File Explorer - you can edit file filter now
· New localization - Ukrainian (Taras Kapuszczak).
· New template fot C++.
· Bracket isn't completed before $ (PHP variable).
· Open file from selected text - if URL address, file is open in default webbrowser. If you need source code, use it with CTRL.
· DoubleClick in PHP select variable include $ on the begin.
· Program Settings / HTML - convertion from text to HTML - option <br> or <p>...</p> for paragraphs.
· Changed files are checked after compilation (e.g. open Log files).
· Code explorer - added JavaScript and Python parsing.
· Now you are able to change shortcut for clips (Ctrl+Space and Shift+Ctrl+Space).
· Confirm dialog before 'Character Case Change' for whole document.
· Search dialog - added context menu for search expression with regular expression.
· Drag/Drop support for Link panel - from internal explorer, file tab and from PSPad "outside"
· A default template can be used for use when creating a new file of a particular type.
· Command Line - new function
· Close window with middle button click on file tab panel
· Added new variable %SelText% for using with compiler and external apps
· Print Preview - mouse wheel change scale
· Added list of last command to Google and Highlighter settings/Help files
· Sort dialog remembers last settings between PSPad sessions
· Resolve color - removed default hotkey Ctrl+Alt+C
· Bug in CodeExplorer sorting if no line selected
· Bug with position if you insert template more times
· User variables wasn't saved
· Incorrect char set in print header and footer
· If all files closed, recent project was disabled
· File info - detail statistics limited for files up to 50 000 lines
· Select inside brackets wasn't work with "<" ">" brackets
· Function "Insert without cursor change" wasn't correct if some text selected
· Was possible to insert Date or GUID into R/O file
· Individual Tab settings from highlighter settings wasn't load
· Search dialog - error message if can't write settings
· Project tree - wasn't possible to sort whole project
· Project tree - impossible create folder if folder with same name exists
· Incorrect behaviour in some casses with TiDy reformat
· Google search dialog has OK button disabled even last search was filled
· Clip from selection wasn't enabled for simple text
· Search in Files - after cancel confirm dialog, OK button was disabled
· UnIndent (Shift+Tab) error with enabled "Trim trailing spaces"
· UnixShellScript doesn't highlight strings `string` and variables before =
· Error inserting date time in RFC format if timezone with minutes used
· Code Explorer doesn't clear content after all files closed
· Highlighter settings - autoindent chars wasn't loaded
· ASCII chart inserts even editor was ReadOnly
· Error caling function "Resolve color" behind end of line
· Error if bad e-mail client set
· Corrected Code explorer behaviour and file switching
· Error expand tree in Code explorer if tree is empty
· Status bar line and position info behaviour
· Edit commands (Cut/Copy/Paste) in Command line
· Base calculator - behaviour when variable base was changed
· If template directory was emty and autoopen emty file disabled
· Lost highlighters settings
· List of User syntax definition in Highlighter settings


 Help File Changes

The English Language version of the PSPad help file is currently undergoing a rewrite.

In this section I will list the chapters that have been redone. If you find any mistakes/omissions then please let me know at pspadhelp@shemminga.cix.co.uk. It would help me if you could also include the phrase 'PSPad Help' in the subject of your message.

28 Jan 2004
Clips
Colour Selector
Date Dialog
Edit Menu
Export
File Menu
File Tabs
File Tabs Context Menu
Interactive Clips
Main Toolbar
Open Special
Program Settings - Internet
Program Settings - Program
Running a Command
Special Conversion
The Statusbar Explained
Toolbars
Toolbars - Control
Toolbars - Edit
Toolbars - HTML
Toolbars - Look
Toolbars - Macro
Toolbars - Main
Toolbars - Project
View Menu

13 Jan 2004
Date Dialog
Edit Menu
File Tabs Context Menu
Google Search
Insert Text Into Lines
Lines Manipulation
Regular Expressions
Search and Replace
Search and Replace in Files
Search Menu
Selection Type
Sort
Special Formatting
The Statusbar Explained

Dec 2003
Clips
Code page conversion
Context Files
External Applications
External Command and Compiler Variables
FAQ
File Menu
File Tabs
Hex Editor
Interactive Clips
Overview
Program Settings - Colours
Program Settings - Editor
Program Settings - Files and Dirs
Program Settings - HTML
Program Settings - Internet
Program Settings - Key Mapping
Program Settings - Program
Program Settings - System
Project Context Menu
Project Menu
Save Desktop
Starting PSPad
Template Files
What's New
Working With Projects


 FAQ

Q: My dockable window (ASCII, Clipboard, ...) has moved from the right. How do I put it back?
A: Grab the title bar of the mobile window. Drag it over the right scroll bar or right border and drop it when you see it snap in place. Any of the windows on the right are "dockable", meaning you can drag them free to float anywhere on the screen. Or you can dock them to the left or right. TIP: You can drag your FTP or Links window to the right and then even close them, but any time you restart PSPad, they will be returned to the Project Tree on the left.

Q: Why would I want a dockable window to float?
A: You might want to keep up, say the ASCII table, but not take away space from the editor window. So you float it. Or switch sides. As long as your Project Tree is showing, you might want your Clipboard Monitor docked in there, rather than taking up more room on the right.

Q: How do I find out what a particular hotkey does?
A: Examine .\PSPad\KeyMap.INI to look up a particular hotkey. Or look through Program Settings / Key Mapping.

Q: I want to create some tutorials. What do you need?
A: All I need is content, preferably in HTML. I want modify English pages like the Czech - right menu. Then we can publish your tutorial on PSPad web pages.

Q: I hate spam, and I do NOT want my email address published.
A: I don't publish any address without owner consent.

Q: Undo all the way back to first edit of active file will NOT reset marker of File Modified. So it will still prompt you to save on exit.
A: And now imagine case, when you open file, make some changes, save it. Modified status is reset. Then you undo all your changes, even those before the save. PSPad makes it possible do UNDO even after file Save. (AFNAB)

Q: Known BUG: Sometimes on opening program I get a Page Fault Error: in module USER.EXE at 001e:00001df6. Can happen several times in a row. Not sure how to reproduce.
A: I can tell you how to do it. Run PSPad, minimize (with Esc) it and run it again direct with PSPad link (e.g. on Desktop). Only happens on W9x and only if you Run PSPad without file as parameter. I tried everything, but I don't know reason. All these bugs are my nightmare.

Q: How to: "Open Active File in External Program". Took me forever to find this. The icon Button should have a pull down triangle to the right of icon.
A: Every highlighter has space to set 5 external programs and one compiler. You can run it With hotkeys (F9 ...), from menu File / Open Special / Open With or from menu File / Compile. You can also show Control Toolbar (Menu View / Toolbars) or Right Click on Toolbar you have buttons on toolbar to run it.

Q: How to set external programs?
A: Tools / Highlighter Settings / External Applications. These can be set independently for each language in the list on the left.

Q: How to find text?
A: There are 3 ways to find text: Ctrl+F (which I assigned) or Select/Find to find. F3/Shift+F3 to find next / Previous, Shift+Ctrl+Up or Down to quickly find current word or selected text. Then there is Ctrl+E to do Incremental Search...

Q: What are Regular Expressions (RegExp)?
A: Very powerful addition to the Find command. I used: Caption=[A-Z]\w+ to find all lines with Caption followed by = and a Capitol Letter, followed by any letters and a space. Then F3 gave me the next. Learn them! There is an explanation of how to use Regular Expressions here.

Q: Find/Replace vs. Find/Replace in Files? What's the difference?
A: Use Ctrl+H to Find/Replace text in active file. Alt-F is the key I assigned to Find/Replace in Files. Be careful. Use the List button to see proposed changes. Find/Replace in Files is very powerful, and thereby dangerous. Can change all occurrences in all files in a directory.

Q: How to set file Tabs across the bottom?
A: Program settings / Program / [ ] File panel on top (uncheck)

Q: What is Swap Line?
A: It will swap lines with the line below it. Now called, "Swap with Line Below" Right click on a line, select Special / Swap Lines.

Q: What is Clip Board Monitor?
A: After you start it, a window will show up to the right. This window will capture all of your Copy (to clipboard) commands, such as Ctrl+C, Ctrl+X and menu Edit / Copy. Then if you want to Paste one of them, you just double click on it in the Clip Board Monitor. Once open, you can: Start/Stop monitoring, Delete all items from list, Copy text to clipboard, Paste text to your document, or delete an item from the list.

Q: What are User Variables?
A: List of static variables for usage ONLY in Clips. They are always surrounded by %percentsigns%. You can use predefined ones or add / edit / delete new variables. Variables are listed at top of template definition file. Premade for: HTML, Perl, PHP, INI, XML, jScript/JavaScript, NOT: C++, General, ... If a particular template is not yet defined, you get a template with some comments on top to create your own. Don't save changes unless you create something useful. BUT How do I use it??? The formatting on top is NOT in English. I need examples of how to create and use variables. (See HowTo)

Q: Multihighlighter for Embedded Clips?
A: You can get different Clips (& highlighting) when you are inside the JavaScript part of an HTML file. That is useful when you have, say, PHP or JavaScript embedded inside your HTML. Try it (Ctrl+Space) in HTML with PHP or JScript in Multihighlighter. You get a template for the specific part of code you are in. In PHP part, you get PHP template, in HTML part, you get HTML Clips. Clips can also be interactive (like most of HTML Clips are.)

Q: Clips are hard. Can someone create a template to generate new Clips?
A: Sure, I think. It would have to go in the ???.DEF file.

Q: Is there a Glossary or Clips Library?
A: First check out AutoCorrect: menu Tools / Spell Settings ... and enter some values for words you want replaced when you hit a space after you write them. For example, I put in my initials "sel" and my name "Steve LeBlanc". So anytime I type sel, followed by a space, it gets changed to "Steve LeBlanc". It was designed for fixing common typos, but works great for abbreviated entries. For more complex items, use Clips and User Clips. Follow the first few letters of the command (or tag) with Ctrl+Space. Or follow the full name with Shift+Space. Clips are predefined for the major languages, like C, HTML, PHP and Perl.

Q: Is AutoComplete (Ctrl+J or Tools / AutoComplete) like a glossary?
A: No, it is just a fast way to enter the rest of any single word you have started to write, a word which is already in the current document. It saves me little time. But I'm a pretty good typist. Some people love it.

Q: Where do I get a help file for a particular language?
A: You may create or find a .HLP or .CHM file for your particular computer language on the Internet. You can then configure it in Tools / Highlighter Settings / Filters tab / Help file:. But the template definition files do a pretty good job too, if you only need a syntax reminder. In an HTML document, type the word BODY and before you hit space, press Ctrl+Space. Just remember, you don't have to fill out all the fields. (Make tutorial for this???)

Q: Maximum Line Length?
A: Now is used only if some special cases. Now PSPad autosizes max.line length. But before this number used to limit maximum line length. ??? This will be changed next version.

Q: What are "variables" that get highlighted? The variables that I create in Perl are NOT highlighted. But a few built-in vars are: $_ Oh, I see. "Identifies" are the variables I create.
A: Jan: Already corrected (still in my comp). Some user from forum told me. In new version all variables in Perl will be highlighted.

Q: Can I upload binary files like .ZIP or .CHM help files in PSPad's FTP client?
A: No! PSPad only handles text files. To upload binary files, you will need a full functioning FTP client, such as ws_FTP LE or FileZilla. Even if you Open in Hex Editor, the "Save To FTP" will be grayed out. There is no Binary transfer mode available in this FTP client.

Q: What is Paste as HTML? No mention of it in Help.
A: It works with M$ product. E.g. if you copy to clipboard from IE, you can paste it into PSPad as HTML source, not only as plain text. You can use it as paste from Word too, if you don't mind Word's HTML jungle (dirty HTML).

Q: Why won't my Alt+Drag of mouse allow me to column select?
A: Because you need to turn OFF Word Wrap. Also make sure that Program Settings / Editor / Alt Sets Column Mode (is checked)

Q: Which icon is for gray checkbox in 3-way checkbox? [0] or [X]?
A: [X] is black check. [0] is gray check. [ ] is unchecked. I forgot about non-WinXP users :-(. Maybe if we change color of [0] in Help to gray it will help user.

Q: How to tear out a highlighter I have created?
A: If you mean user highlighter, go to Tools / Highlighter Settings / Filters. Click on your highlighter (one of the bold) and in list, click on blank line on top.

Q: Under Program Settings... / Files & Dirs / Save work, there are 3 settings. I understand that without a check, there are no files opened automatically on start of program. But "[X] restore only files opened in PSPad" vs "[0] - restore all actually open files". What is the difference?
A: Two modes. Restore all files (gray check) restores all open files from last PSPad state. Restores only files opened in PSPad: You edit some files in PSPad. Exit PSPad, run it again, files are back. Now exit PSPad, open some file from TotalCommander in PSPad, exit PSPad. Than run PSPad again. Back are files you previously edited, but not files you opened from Total Commander or with double click in Windows Explorer. See Save Desktop in Help.

Q: Show Color is missing under menu HTML, like Help file says. Put in Color Dialog?
A: I moved it under Tools. "Show color" works not only for HTML. And name was changed to "Color Selector" (or possibly Color Translator)

Q: Internal web browser with Apache web server support ??? What does that mean?
A: If you have Apache installed, set correct HT Docs directory in Program Setting / Internet. If you use Shift+Ctrl+F10 instead F10, internal browser will browse from your Apache server, not from local file. You can see PHP results, CGI scripts run, ...

Q: Can user set size of Project Tree? Seems too wide for me.
A: Resize it with mouse. Simply drag right edge of project. Width is remembered.

Q: What is Code Explorer? Mine seems broken.
A: Code explorer only works with some environments at this time. Try it with your English.INI files. You will see headings followed by items for that heading. You may need to click the plus to expand. This was buggy, not allowing you to open it, close it and open it again. Being fixed in next version.

Q: What is "Repeat" in the HTML dialog box? (html Crtl+Space) Not in Help.
A: It will repeat pasting template item without leaving it. e.g. when you need to add more of the same item in the list.

Q: How can I change Filter Mask in Highlighter Settings / Filter?
A: You can't modify the Filter Mask in Highlighter Settings / Filter for the User highlighters (bold font). Other highlighters are editable there. User highlighter Filter Mask you can edit in Tools / User highlighter

A: If you are looking at a User Highlighter (bold font), then you must edit the File Filter mask in: menu Tools / User Highlighter / File types, comma delimited. However, all the others can be edited in Tools / Highlighter Settings. (Why? Seems unnecessarily difficult)

Q: In FTP client context menu of an active connection, what's the difference between: "Open as Text" and "Direct Edit in PSPad"?
A: Open as Text creates a local copy of the file in the Windows Temp folder. This makes for fast edits and saves. You may then Right Click the tab and select Save To FTP. Direct Edit, on the other hand, never saves a local copy. Any time you hit Save, it saves to the FTP host. Direct Edit is better for quick edits and will also prevent you from forgetting to save your changes to the FTP site. When you double click a file, you get a Direct Edit.

Q: How do I maximize all windows after I've looked at them in restore mode?
A: Maximize any of them, and they all maximize. (This may be a general Windows feature.)

Q: menu File / Projects / Open Project seems the same as File / Projects / Project from Directory ... Are they the same?
A: No! Project from Directory creates new project from selected directory. Being renamed to: "Create Project from Directory...""

Q: Add Cr+Lf: Each time file is saved?
A: No. After file is saved, one blank line is added to the end, unless one already exists. Blank lines don't keep adding up.

Q: FTP Files are stored in temporary folder (structure): TEMP\PSPad\server\ftp_path\file (Is that under PSPad directory?)
A: No. This is really the Windows Temporary directory. In Temp is created PSPad subdirectory and files are stored in this subdirectory. But I found a bug. The path missed part of FTP_Path, so all files was stored into TEMP\PSPad\server\file.

Q: In menu Format / Block Format / Reformat help it says, Alternately, you can use Shift+Ctrl+K - paragraph separator is short line. ??? What does that mean?
A: In plain txt doesn't exists any paragraph end chars. So this function takes as end of paragraph the shortest line short of the right edge.


 Credits

Clips

8051 - Jaromir Rezek
AutoIt - Petr Franta
C++ - Karel Pavelka
CAL - Martin Parizek
HTML - Karel Pavelka
IEC11131 - Petr Vetesnik
LonWorks NeuronC - Senko
MS-Dos - David Tardon (pøeklad)
OtherCad - Ales Cerny, Ivan a Petr Slepickovi
Oracle - Kubo Zdeno, Milos Beno
PHP - Krystof Slaby, Karel Pavelka, Frantisek Blaha,
RSS - Karel Pavelka
TeX - Tomas Vacek
XHTML - Karel Pavelka
XML - Karel Pavelka
WML - Karel Pavelka

User highlighters

8051 - Jaromir Rezek
ADA - Stéphane (Bush Man)
ArchiCad - Lubos Cipra
Asm51 - Martin Zeman
ASP - Jiri Hudec
C6000 - Stefanos Togoulidis
Cliper - Kamil Vaclav
Harbour - Giuseppe Pergolesi
IEC11131 - Petr Vetesnik
LUA - Pawel Mrochen
MicroChip PIC assembler - F.Bina
Progress - Ivo Liska
R - Nick Drew
Tcl/Tk - Ludek Melichar
WinBatch - Andre Pinheiro
WML - Karel Pavelka
X3D - Eckhard M. Jäger
Z80 - Jiri Jaros

Spell check dictionaries

Czech dictionary - Michal Kolesa, Lubos Nemec, Zdenek Bulin, Radek Tlapak, Tomas Bat

Localization

Brazilian Portuguese - Goncin
Catalana - Antoni Clavell
Chinese - SiC
Chinese Big5 - Nelson
Croatian - Mladen Mintakoviæ
French - Jean-Christophe Meylan
Italian - Angelo Contardi
German - Karel Jakl
Greek - Stefanos Togoulidis
Hungarian - Leonard Nimoy
Nederlands - Petyr, Amsterdam
Polish - Piotr Murawski, Rafal Lampe
Portuguese - João Alves
Russian - Angie NM
Slovak I - Jan Skokánek
Slovak II - Jozef Kaprál
Spanish - Hernan Fernandez
Turkish - Cemal Dogan
Ukrainian - Taras Kapuszczak

Correction of my "Czech" English in localization file and help - Steven LeBlanc and Stuart Hemming.

I want to thank all those people who participated in PSPad development - testing, bug reports, dotation, new functionality suggestions...


Contacts and info

 Info and Contact

About the program
The program is written in Borland Delphi 5 & 7

The program uses these components and units:

· SynEdit - syntax highlight component (http://synedit.sourceforge.net). I expanded on several functions: (e.g. wordwrap, user highlighters...)
· JCL - Jedi Code Library (http://www.delphi-jedi.org/)
· HexEditor - Markus Stephany, (http://home.t-online.de/home/mirbir.st)
· RTF2HTML - RTF to HTML conversion. Source code by David Majda (http://dmajda.hyperlink.cz)
· TDiff - text differences by Angus Johnson (http://www.users.on.net/johnson/delphi/)
· SynSpellCheck - Jakuba Dybala (http://www.synspellcheck.prv.pl) with own functionality - speed optimized and myself created Czech dictionary
· algorithm for word difference in spell check by Josef Hampl
· PNGImage - Gustavo Huffenbacher Daud (http://pngdelphi.sourceforge.net)
· GifImage - Anders Melander (anders@melander.dk)
· Synapse - work with HTTP and FTP - Lukáš Gebauer (http://www.ararat.cz/synapse/)
· PBCClipBoard - clipboard component - Paul Bak (http://home11.inet.tele.dk/BakSoft/)
· Expression Evaluator - vyhodnocení výrazu - BitSoft Development (http://www.bitsoft.com)
· MD5 - Matthias Fichtner - http://www.fichtner.net/delphi
· XPMenu - Khaled Shagrouni - http://www.shagrouni.com/

All used code and components are freeware or are used with author's consent.

All other code is my own and came from PSPad development.

PSPad is freeware.

About the author
Name: Jan Fiala
Email: support@pspad.com
www: http://www.pspad.com

About the Company
Address:  Prog-Soft s.r.o.
          Na Kovarske strani 1
          317 03 PILSEN

Phone:      377 243 404
Email:      plzen@prog-soft.cz
www:         http://www.prog-soft.cz

We are authors of information system INFOS. This IS is specialized for drinks producers and distributors.


 Starting PSPad

From Windows
You can start PSPad by double-clicking on the PSPad.exe file in Windows Explorer, by double-clicking on any file that is associated with PSPad (see Program Settings / System) or by dragging and dropping a file on to either the PSPad.exe file or a shortcut to it.

From the Command Line
The syntax to start PSPad from the command line is:

PSPad "drive:\path\filename" [/switch]

Note: The PSPad directory must be in your $PATH environment variable for this to work. If it isn't then you must enter the full path to the PSPad.exe file.

If the filename passed to PSPad is a PSPad project file then PSPad will open and load the project.

Switch values:
/H    open file in PSPad HEX editor
/R    open file in ReadOnly mode
/nnn  open file and goto line nnn


 File Tabs

You select a file tab by clicking on it with the left mouse button or by repeatedly pressing Ctrl+Tab until the required file is marked as the active one. You can change the order of the file tabs using drag 'n' drop with the left mouse button.

Right-clicking on a file tab will display a context menu. For details about these menu entries see File Tabs Context Menu.

The colour and style of a file table and the colour and style of the filename on the tab indicate a number if things about the file. The following picture shows you the various styles of File Tab. Descriptions providing more information are below.

filetabtypes

Editor File
a file that has just been opened or saved and is not the active file.

Active File
The file is the active file. Any of the other file tab types will show as bold if the file is the active one.

Changed File
The file has been changed and not saved. Any of the other file types will show the red mark if it has been changed.

Main File
The file has been maked as the main file for a project or compiler. See Project Context Menu for more details on this subject.

Hidden, System or Read-only File
The file on disk is marked as hidden, system or read-only.

File Marked Read-only in PSPad
The file has been marked as read-only in PSPad. See File Tabs Context Menu for more information.

Hex Editor File
The file has been opened in the HEX editor. See File Menu and File Tabs Context Menu for more information.

Auto Refreshed File
The file has been marked to auto-refresh from disk. See Window Menu and Settings / Program Settings / Editor for more information.

Text Differences File
The results of a text differences operation. See File Tabs Context Menu for more information.


 File Tabs Context Menu

If you right-click on a file tab the file tab context menu is displayed. The options shown work with the file over whose file tab you invoked the menu. If function you select from the menu operates on 2 files (for example 'Text Diff with this file') then the system uses the active file and the file over which you called the context menu.

filetabscontextmenu

Close
Closes file

Vertical / Horizontal Split
Shows two files in whole editor area. If you use it with active file, this file will be opened again, as a Read Only file (R/O), with file tab in Italics.

Synchronize Moving
This operates like 'Vertical / Horizontal Split' above, but locks the file positions together so that scrolling in one window causes the other window to scroll by the same amount.

Text Diff with This File
Compare contents of two text files. This function operates on the selected and the active files. Results are displayed in new window. More can be found on Text Diff in the Text Differences .

Text Diff with File Contents on Disk
Compare active file with its disk contents. This function is only available if the file has been loaded from disk or it is a newly created file that has been saved to disk. Results are displayed in new window. More can be found on Text Diff in the Text Differences .

Set as Main File for Compiler
Sets file as main project file. If you run the compiler (see Compiler Settings) the file marked as Main (if set) is always sent to the compiler. That file may or may not call other files to be compiled. If you don't compile this type of file, then setting as Main serves to make that file more visible in the editor file tabs.

Add to Project
Add file to active project folder


Working With Projects

 Projects

What are projects for?
A project is a way of managing a collection of different files that are related in some way. For example, if you were working on, say, an Internet application you may have several .html pages, a .css stylesheet or 2 and some script files. You can create a project so that all these files are accessible whilst you are working.

What you get if you use projects.
· Simplicity: You only need open one file to have access to all of the files you need for your project.
· Flexibility: Files in a project can be stored anywhere on your disk or network; you don't have to put them all in the same place. Files can be used in multiple projects.
· Convenience: File is opened by double-clicking the relevant file icon in project tree.
· Organization: Files can placed in project virtual folders and files can be automatically sorted within those folders.
· Automation: You can set main project file so it will be always run in external application and/or compiler by default if one is set (see External Applications and Compiler Settings).
· Continuity: Desktop state can be saved at end of work and restored when the project is reloaded.
· Safety: Adding or removing a file from project has no influence on the file (removing a file from a project does not delete it). Only a file reference (link) is added to or removed from the project.

The Project Tree.
After the program starts an empty project is created (unless you start the program by passing a PSPad Project file name, see Starting PSPad). A Project is activated by adding at least one file. Below is a example Project Tree.

projecttree

The Project tree has a number of Icons at the top.

projfoldernew Create folder
Adds a new virtual folder to the project. The folder name must be unique in this project .

projfolderdel Remove folder
Remove folder and files it contains from project. This option is greyed out if the item selected in the project tree isn't a folder. Note: Any files removed during this operation are not deleted; only the reference to them in the Project file is removed.

projdelfile Remove file from project
Removes the file from the project. This option is greyed out if the item selected in the project tree is not a file. Note: This option does not delete the file, it just removes any references to it from the Project.

projectinfo Project Information
This opens a window that displays a list of all files in the project. The list shows the file name, the number of lines in the file and the full path of each file.

settings Project Settings
This opens a window with 3 tabs; General, External Applications and Compiler. The details for External Applications and Compiler tabs can be found in the chapters External Applications and Compiler Settings (The settings on the Project file have priority over the equivalents in Highligher Settings). The General tab a number of options:

Project Default Directory
The default directory for project files.

Default CP for File Opening
This is the same as the setting in Program Settings / Editor.

New File Format
This sets the file format for new files created whilst this project is open. The choices are DOS, Mac or Unix. Note: The Project file must be saved before this setting takes effect and it will only affect files created after the setting has been set/changed.

Cursor at End of Log File
This is the same as the setting in Program Settings / Program.

Don't open any files after project load
If checked this will cause the program to load the Project file but not open any of the individual files in the project. Otherwise, once the Project file has been loaded, any individual files that had been open when the project was last loaded will be reopened.

How do I organize my Project Tree?
There are a number of ways of organizing your Project tree.

Automatic Sorting
You can set an option in Program Settings / Program to automatically sort files and folders in your Project tree as you add them.

Sort on Demand
You can right-click on the main Project Folder or on any of the virtual folders and select 'Sort by name' to sort that folder. See Project Context Menu for more details.

Manual File manipulation
You can drag and drop files to move them around the Project tree.

How is project stored
All of the project relevant information is stored in a .PPR (PSPad project) file. This file type is automatically associated with PSPad.

Files references are stored with relative path to project file. Its important for easy project moving.

How Files are Selected in a project
Double-clicking a file on the Project tree will load the file into PSPad, if it is a know file type (C, C++, PHP, HTML, etc). However, if that file type is not defined in PSPad then the system will launch that file in its default application. For example, double clicking on a .DOC file will launch Microsoft Word (assuming that this is the program that .DOC files are associated with) with the file name as the parameter. If you define a User Highlighter for a given file type then double-clicking in the project window will launch that file inside of PSPad.

You can always right-click on a file in the project window and select 'Open as Text' or 'Open in Hex Editor' if it is not a type known to PSPad (see Project Context Menu for more details).


Project Context Menu

 Project Tree - Context Menu

Right-clicking on the Project tree will display a context menu. The options available will be dependant on where in the Project tree you click. An example is shown below:

projectcontextmenu

fileopen Open as Text
Opens the file in PSPad. If the file type is known to PSPad then the file will be syntax highlighted appropriately. If the file type is not know then the file will be treated as a text file and opened. This option is only available if you have clicked over a file. Note: Not all files can be read as text files and whilst PSPad will open them, the contents may not appear as you might expect. You should be aware that you could prevent a program from working or lose valuable data if you change a non-text file and save it.

hexdump Open in HEX Editor ...
Opens the file in the Hex editor. This option is only available if you have clicked over a file. Note: You should be aware that you could prevent a program from working or lose valuable data if you change a file in the Hex editor and save it.

shellopen Open with Default Program
This option will open a file using the program it is associated with in Windows. This option is only available if you have clicked over a file.

editchp Rename
This option will allow you to change either the project name or the name of a virtual folder. This option is not available if you have clicked over a file; to rename a file you should use the 'Save As...' option under the 'File' menu and then add the newly created file to the project.

projdelfile Remove File from Project
This option removes a file from the project. The option is only available if you click on a file. Note: The file is not deleted, it is only removed from the project.

projfilemain Set File as Main for Compiler
Sets the file as main project file. If you run the compiler (see Compiler Settings) the file marked as Main is always sent to the compiler. This option is only available if you click on a file.

projfoldernew New Folder
Creates a new virtual folder.

projfolderdel Delete Folder
Deletes the virtual folder and removes any files in it from the project. This option is not available if you click on a file. Note: The file is not deleted, it is only removed from the project.

Add Files ...
Allows you to add files other than those open in PSPad. You can add multiple files using this option.

Sort by Name
If you select this option after right-clicking on the project folder it will alphabetically sort all of the virtual folders and then sort each folders contents. If you select the option after clicking on an individual virtual folder only that folder will be sorted.

Open Folder Files
This option will open in PSPad all of the files in a virtual folder. This option is only available if you click on a virtual folder.

Close Folder Files
This option will close any files that are in a virtual folder if they are open in PSPad. This option is only available if you click on a virtual folder.

projectinfo Project Information
Shows the project information. For details see Working with Projects.

settings Project Settings ...
Shows the project settings. For details see Working with Projects.


 FTP

What is FTP?
FTP (File Transfer Protocol) allows you to connect to an FTP server to send and receive files over the Internet. You might, for example, use PSPad's FTP client to upload (or send or post) your HTML files to your website.

Where is the FTP client ?
The FTP client is a tab in the Project panel. (menu View / Project Tree or Ctrl+F2) After you click the Connect FTP button (top left), a list of defined connections is displayed. You can then connect, add, remove, edit, ...
After successful connection, other buttons are enabled.
You can see connection status information on LOG panel, FTP tab.

FTP client Notes
· A file, opened directly from FTP has yellow background on File Panel. All information about connection is remembered (connection name, FTP directory, ...) Just edit and hit Save.
· After Save Function is called, file is saved back to its original location on the FTP server. If the connection isn't active at this time, PSPad will try to connect. If another connection is active, it will be disconnect.
· If you want to save a file (which was not opened from FTP) to an active FTP directory, you have 3 choices:
1. Select "Save to FTP" from File menu or
2. Pull down the triangle menu next to the Save icon (a disk) or
3. Right Click the active file tab, and select Save to FTP.
· If no FTP connection is active, the option to Save to FTP will be grayed out.
· Files are stored in your Windows temp folder (structure):
TEMP\PSPad\server\ftp_path\file
They stay stored until the contents of your TEMP directory is deleted.
· Un-Warning: You are prevented from actually deleting the parent (..) directory or any non-empty directory, even though it looks like you can. It even prompts you to ask if you are sure.

FTP client allows
· connect/disconnect to FTP server
· a detailed Right Click context menu
· a browsing FTP structure
· refresh (reload) directory structure
· quick jump into root directory
· quick jump into remote (working) directory
· create directory
· delete file or empty directory
· rename file or directory
· keep connection open by sending specified command at intervals
· saves your password in encrypted form
· upload and download text files, NOT binary files, like .JPG, .ZIP or .CHM.

FTP Context Menu
In context menu of an active FTP connection, you can...

Open as Text
Creates a local copy of the file in the Windows Temp folder. This makes for fast edits and saves. You may then Right Click the file tab and "Save To FTP" if you choose. If you want to save the file, take it OUT of the Temp folder, or it may get deleted.

Direct Edit in PSPad
Never saves a local copy. Any time you hit Save, it saves to the FTP host. Direct Edit is better for quick edits. It will also prevent you from forgetting to save your changes to the FTP site. When you double click a file, you get a Direct Edit.

Other Context Menu options are self explanatory.


FTP setting

 FTP Client Settings

Connection Name
User display name for connection list

Server
FTP server name or address. If you need to specify nonstandard port (21), write port number after server address:
ftp.name.domain:port

User Name
User name for FTP server access. It's optional. If not entered, you will be asked for it.

Password
User password for FTP server access. It's optional. If not entered, you will be asked for it. It is stored in file PSPadFTP.INI in encrypted form.

Remote Directory
This directory will be set after the server connects.

Connection Timeout
You can set a timeout for each FTP account. This is the amount of time the FTP client should wait for a response from the server before it disconnects from the server.

Passive Mode
You may need it if you connect to FTP from proxy server or behind a firewall. Always try to connect with it first.

Keep Connection by Sending
In defined intervals (if FTP is idle) PSPad will send chosen command to prevent server from disconnecting you. Many servers will wait 5 minutes (300 seconds) of inactivity before disconnecting you.


 HEX editor

PSPad primarily works with text files. The character with ASCII value 00h, is taken to be the end of the text file. That means you can't open a non-text file in the editor. PSPad also contains a HEX editor which will open the sort of files mentioned above.

What is a HEX Editor for?
In the Hex editor you can open any type of file and edit it byte-by-byte. Warning: You can ruin a binary file by changing a single character if you don't know what you are doing.

How to edit any file in PSPad?
You can open a file in PSPad's Hex Editor in a number of ways:
· Use the 'File / Open in HEX Editor...' menu option;
· Drag a file in to PSPad from Windows (or from PSPad's own File Explorer) or otherwise open a file and either:
· Right-click in text area and select 'HEX Edit Mode';
· Select the 'View / HEX Edit Mode' menu option;
· Add the file to a project, right-click on the file and select 'Open in HEX Editor...'

How to edit text file in HEX editor?
With a file open, either select the 'View / HEX Edit Mode' menu option or right-click in the text edit area and select 'HEX Edit Mode'.

Once in HEX edit mode, you can change the file by typing hexadecimal codes directly in to the Hex area on screen or my tying in to the ASCII area to the right of the screen. By default, the editor switches to overwrite mode when editing in Hex mode. Changes to the file are highlighted.

You can toggle between HEX and text modes as often as you need.

What you can do in Hex editor?
· switch between overwrite and insert mode by pressing INSERT;
· goto address - Alt+G (enter the byte address you want to go to in either decimal. To enter an address in Hex prefix the number with '$' - eg. $10 takes you to the 16th byte). Note: The byte address starts at zero, not 1;
· Find and/or replace text or bytes - Ctrl+F;
· Create and goto bookmarks.


 Command line parameters

Command format:

"drive:\path\PSPad.EXE" "drive:\path\file name" /switch /switch...

Available switchech:

/H    open file direct in HEX editor
-H    open file direct in HEX editor
/R    open file in ReadOnly mode
-R    open file in ReadOnly mode
/nnn  after open file, goto line or position in HEX nnn
-nnn  after open file, goto line or position in HEX nnn

If FileName or path contains spaces, is necessary to enclose it with double quotes !


 Code page conversion

How does PSPad convert code pages?
If you set a Code Page other than ANSI it means the file on disk is in this Code Page. So while reading file, PSPad provides conversion from this specific Code Page to ANSI, which is Windows native format.

If you want save file in a different Code Page, simply change the Code Page using the menu and save file; PSPad will convert the file contents during the Save process from ANSI to specific code page.

Most people will use ANSI (no conversion), OEM, ISO-8859-2, UTF-8 or UNICODE. Code pages have meaning for Czech and Slovak users only.

Autodetect CP
Don't use this function! It has meaning for Czech or Slovak users only. In other environments, it will not work.

Example:
Take an ANSI file and save it as UNICODE
1. Set ANSI in menu Format.
2. Open file.
3. Change code page to UNICODE.
4. Save file.
File is converted during save process to UNICODE.


 The Statusbar Explained

The statusbar is used to display relevant information about the file you are working on. In some cases this information is imparted using icons. This chapter explains what each of the items means.

statusbar2

Cursor Position and File Size (1)
This section displays information about the current cursor position and the file size. The first character is the line number the cursor is on, the 2nd is its column position. The 3rd number, in round brackets, is the total number of lines in the file. The 4th, in square brackets is the total number of characters in the file.

For reasons of efficiency, if the file exceeds 1000 lines this part of the statusbar changes format to that shown below.

statusbar3

When in this format, the first number is the line the cursor is on, the second the column. The final number is the number of lines in the file.

When text is selected, this section of the status bar changes again to the format shown below.

statusbar4

In this format the fiirst number is the current line number, the 2nd is the current cursor position and the last, the number of characters in the selection. Note: The number of characters selected will include 2 characters (LF and CR) for each line boundary crossed.

Unsaved Changes (2)
This section contains either nothing or a picture of a disk. If the disk is shown then the file has been altered since the last save or has not been saved at all. Note: Making a change to a file then undoing the change using Edit / Undo will not reset the unsaved changes marker.

Selection Type (3)
This section indicates the Selection Type currently in force. You can change the selection type by clicking on the icon . For more information on Selection Types, see Edit / Selections Type.

Block Select (4)
This section indicates whether or not you are using the F8 block select function.

Character Under Cursor(5)
If the file is not empty, this section will show details of the character that the cursor is on. The section shows up to three values:
· the character itself (if it is a printiabe character).;
· the characters ASCII value in decimal;
· the characters's ASCII value in decimal.

Current Highlighter(6)
This section holds the name of the highlisghrt in use (where applicaable).

File Format (7)
This section shows the format of the file which, essentially, is simply a way of describing what characters are used to mark the end of line. You can change the file format by double-clicking on his section of the statusbar. For more information on file formats see Format.

Code Page (8)
This section shows the code page currently in use. For more information about Code Page choice see Format.


 Macro

What is macro
Macro is a series of editor commands. You are able to record these commands and then replay them later.

How it works ?
Press record (CTRL+F5) and from this moment, all text work is recorded. Cursor is changed to recorder picture. Enter your text and keyboard commands.
Press stop recording (CTRL+F5 again), dialog appears, you choose a name and macro is ready for use.
Macros are saved as .PME (PSPad macro record) files. It is saved in the ..\Macro folder, which is created when you make your first macro.
You are able to open the macro from disk, edit and save it.
Warning: You are not prompted when you save a macro by the same name as another. It simply overwrites the previous macro.
The following default hotkeys are available for your macros: F5, F6, Alt+F6, Ctrl+Alt+F6. But if you want to assign them to your macros, you will need to go into the Macro Manager (SHIFT+CTRL+F5) after you have named the macro.

Limits
Macro does not record mouse actions. Do block selections with Shift+Cursors.
Macro does not work with find, replace and other functions.
Macro length is unlimited (memory). List of macro command you can find here.
If you create a macro that selects text or uses arrows while you are in Word Wrap mode, it may act differently when you later execute the macro with Word Wrap off.

Macro editing
Choose menu Tools / Macro / Macro Manager / Edit macro, you will see macro content. You can use special highlighter and clips (Ctrl+Space).

Recommendation for highlighter settings for macro editing:

Comments    black, normal font
Identifiers red, font normal (bad command will be red)
Keywords    blue, font normal


 Macro Manager

macromanager


 Macro Commands

Macro file Format:

Each command on separate line. After the command for char writing ecChar are chars in {} curly braces. For example, the command ecChar{Hello} will write at cursor position the word "Hello"

List of Commands:

ecLeft            move cursor left one char
ecRight           move cursor right one char
ecUp              move cursor up one line
ecDown            move cursor down one line
ecWordLeft        move cursor left one word
ecWordRight       move cursor right one word
ecLineStart       move cursor to beginning of line
ecLineEnd         move cursor to end of line
ecPageUp          move cursor up one page
ecPageDown        move cursor down one page
ecPageLeft        move cursor right one page
ecPageRight       move cursor left one page
ecPageTop         move cursor to top of page
ecPageBottom      move cursor to bottom of page
ecEditorTop       move cursor to absolute beginning
ecEditorBottom    move cursor to absolute end
ecGotoXY          move cursor to specific coordinates, Data = PPoint
ecNextLineStart   move cursor to next line begining

ecSelLeft         ecLeft + ecSelection;
ecSelRight        ecRight + ecSelection;
ecSelUp           ecUp + ecSelection;
ecSelDown         ecDown + ecSelection;
ecSelWordLeft     ecWordLeft + ecSelection;
ecSelWordRight    ecWordRight + ecSelection;
ecSelLineStart    ecLineStart + ecSelection;
ecSelLineEnd      ecLineEnd + ecSelection;
ecSelPageUp       ecPageUp + ecSelection;
ecSelPageDown     ecPageDown + ecSelection;
ecSelPageLeft     ecPageLeft + ecSelection;
ecSelPageRight    ecPageRight + ecSelection;
ecSelPageTop      ecPageTop + ecSelection;
ecSelPageBottom   ecPageBottom + ecSelection;
ecSelEditorTop    ecEditorTop + ecSelection;
ecSelEditorBottom ecEditorBottom + ecSelection;
ecSelGotoXY       ecGotoXY + ecSelection; // Data = PPoint

ecSelectAll       select entire content of editor, cursor to end

ecCopy            copy selection to clipboard

ecScrollUp        scroll up one line leaving cursor position unchanged.
ecScrollDown      scroll down one line leaving cursor position unchanged.
ecScrollLeft      scroll left one char leaving cursor position unchanged.
ecScrollRight     scroll right one char leaving cursor position unchanged.

ecInsertMode      set insert mode
ecOverwriteMode   set overwrite mode
ecToggleMode      toggle ins/ovr mode

ecNormalSelect    normal selection mode
ecColumnSelect    column selection mode
ecLineSelect      line selection mode

ecMatchBracket    go to matching bracket

ecGotoMarker0     goto marker
ecGotoMarker1     goto marker
ecGotoMarker2     goto marker
ecGotoMarker3     goto marker
ecGotoMarker4     goto marker
ecGotoMarker5     goto marker
ecGotoMarker6     goto marker
ecGotoMarker7     goto marker
ecGotoMarker8     goto marker
ecGotoMarker9     goto marker
ecSetMarker0      set marker, Data = PPoint - X, Y Pos
ecSetMarker1      set marker, Data = PPoint - X, Y Pos
ecSetMarker2      set marker, Data = PPoint - X, Y Pos
ecSetMarker3      set marker, Data = PPoint - X, Y Pos
ecSetMarker4      set marker, Data = PPoint - X, Y Pos
ecSetMarker5      set marker, Data = PPoint - X, Y Pos
ecSetMarker6      set marker, Data = PPoint - X, Y Pos
ecSetMarker7      set marker, Data = PPoint - X, Y Pos
ecSetMarker8      set marker, Data = PPoint - X, Y Pos
ecSetMarker9      set marker, Data = PPoint - X, Y Pos

ecDeleteLastChar  delete last char (i.e. backspace key)
ecDeleteChar      delete char at cursor (i.e. delete key)
ecDeleteWord      delete from cursor to end of word
ecDeleteLastWord  delete from cursor to start of word
ecDeleteBOL       delete from cursor to beginning of line
ecDeleteEOL       delete from cursor to end of line
ecDeleteLine      delete current line
ecClearAll        delete everything
ecLineBreak       break line at current position, move caret to new line
ecInsertLine      break line at current position, leave caret
ecChar            insert a character at current position

ecImeStr          insert character(s) from IME

ecUndo            perform undo if available
ecRedo            perform redo if available
ecCut             cut selection to clipboard
ecPaste           paste clipboard to current position

ecBlockIndent     indent selection
ecBlockUnindent   unindent selection
ecTab             tab key
ecShiftTab        shift+Tab key

ecUpperCase       apply to the current or previous word
ecLowerCase
ecToggleCase
ecTitleCase
ecUpperCaseBlock  apply to current selection, or current char if no selection
ecLowerCaseBlock
ecToggleCaseBlock


Program shortcuts

 Shortcuts

List of macro commands is here

Clips
CTRL+Space        clip list
SHIFT+Space       insert clip with name
CTRL+J            auto completion

Editor
CTRL+PgUp         page top
CTRL+PgDn         page bottom
CTRL+Home         document begin
CTRL+End          document end

SHIFT+CTRL+PgUp   select to page top
SHIFT+CTRL+PgDn   select to page bottom
SHIFT+CTRL+Home   select to document begin
SHIFT+CTRL+End    select to document end
CTRL+A            select all
SHIFT+CTRL+T      select whole HTML tag
SHIFT+CTRL+M      select inside brackets
SHIFT+CTRL+'      select string include quotes
CTRL+'            select text exclude quotes

F8                select begin / end block
CTRL+Up           if selected block, than jump to block begin
CTRL+Down         if selected block, than jump to block end
CTRL+Up           scroll up 1 line, leaving cursor where it is
CTRL+Down         scroll down 1 line, leaving cursor where it is

CTRL+Delete       delete word
CTRL+Y            delete line
SHIFT+CTRL+Y      delete to line end

CTRL+C            copy to clipboard. If nothing selected, active line is copied*
CTRL+X            cut to clipboard. If nothing selected, active line is cut *
CTRL+V            paste from clipboard
* Only if Extended Cut & Copy is set in Prog Settings/Editor

ALT+BackSpace     UNDO
Ctrl+Z            UNDO
SHIFT+ALT+Back    REDO
SHIFT+CTRL+Z      REDO

SHIFT+CTRL+N      normal block
SHIFT+CTRL+L      line block
SHIFT+CTRL+C      column block

CTRL+W            word wrap on / off

File operation
CTRL+N            new file
CTRL+O            open file
SHIFT+Ctrl+O      open in HEX editor
CTRL+D            open with name
CTRL+F4           close file
SHIFT+CTRL+F4     close all
CTRL+S            save file
F12               save as
SHIFT+CTRL+S      save all
CTRL+ALT+S        save without date time change
CTRL+P            print
ALT+P             printer settings

Find / replace
CTRL+F            find dialog
F3                find next
SHIFT+F3          find previous
SHIFT+CTRL+UP     find next occurence of actual word
SHIFT+CTRL+DOWN   find previous occurence of actual word
CTRL+H            replace dialog
CTRL+E            incremental search
ALT+G             goto line
SHIFT+CTRL+F      find / replace in files (was ALT+F)
CTRL+M            find matching bracket

Bookmarks
SHIFT+CTRL+0..9   set / delete bookmark
CTRL+0..9         goto bookmark
SHIFT+CTRL+B      bookmark list
ALT+LEFT          set bookmark
ALT+RIGHT         delete bookmark
ALT+UP            previous bookmark
ALT+DOWN          next bookmark

Block format
SHIFT+CTRL+I      block indent
SHIFT+CTRL+U      block unindent
TAB               block indent
SHIFT+TAB         block unindent
CTRL+K            reformat block. End is empty line
SHIFT+CTRL+K      reformat block. End is short line

Comments
SHIFT+CTRL+A      toggle line comments

Char case manipulation
CTRL+ALT+U        char case to upper
CTRL+ALT+L        char case to lower
CTRL+ALT+T        capitalize - Like Book Titles

Macros
CTRL+F5           start record
ALT+F5            stop record
F5                run macro

Tools
ALT+A             ASCII table
ALT+C             HTML Color Dialog
CTRL+ALT+C        Color Translator
ALT+I             insert text to lines
ALT+D             insert date time

External application / compilator
F9                open in external application
CTRL+F9           run compiler

Window manipulation
SHIFT+ALT+L       lock window moving
CTRL+L            show / hide LOG window
ALT+L             jump to LOG / editor / project
CTRL+Tab          next window
SHIFT+CTRL+Tab    previous window
ALT+n             jump to file tab number n (n=1..9)

Mouse
LeftClick         position cursor
RightClick        context menu
MiddleClick       show clip list
                  on file panel tab closes file
LeftB             drag to select normal block
RightB            move to scroll window
ALT+LeftB         drag to select column block
SHIFT+LeftClick   select block from cursor position
DblClick          select word
CTRL+DblClick     select text inside quotes
ALT+DblClick      select HTML tag
CTRL+ALT+DblClick select inside any brackets

Projects
CTRL+SHIFT+DEL Remove file from project


 Files and folders

Files and folders location is relative to PSPad.EXE. Some folders are created as needed.
PSPad doesn't need installation. To work you need only PSPad.EXE. If you use PSPad in MultiUser mode (WinNT), some configuration and user files are stored in user profile directory ( usually .\Document and settings\User\Application data\PSPad)

Files and directory structure

PSPad.exe
editor executable file. This is all you need.
PSPad.chm
help file
PSPad.ini
file settings. In MultiUser mode, it is stored in user profile
PSPad_MU.ini
common settings for all PSPad users
Licence.txt
licence
PSCache.bin
contains file state of previously opened file. In MultiUser mode is stored in user profile. You can delete it if you want.
Notepad.exe
replacement for standard Notepad.EXE. It's only a PSPad starter.
Notepad.TXT
Notepad.EXE description
TiDy_ATL.dll
library for HTML code checking and formatting
TiDyCFG.ini
TiDy configuration file (section are displayed in menu HTML)
PSPad.map
file for debugging. With this file, PSPad creates PSPad_err.LOG file with detailed error info
PSPad_err.log
LOG file with detailed error info
Search.ini
search settings. In MultiUser mode, it is stored in user profile
Recent.ini
recent and workspace files. In MultiUser mode, it is stored in user profile
ASCII.ini
list of HTML entits and control chars for ASCII chart
Online.ini
links for Online help and Online tools (menu Help)
WWWTools.ini
HTML preview commands definitions

Directories

Context
this directory contains files with clips. If you open file with some syntax highlighting, corespondent clip file is opened automatically.
BAT.def
HTML.def
:
VBScript.def
Lang
files with PSPad localization (.INI files)
Syntax
user defined highlighters (.INI files)
Macro
here are stored recorded macros (.PME files)
Spell
dictionaries for spell checker (.DIC files). Here you find UserDictionary too (if no multiuser PSPad chosen)
Colors
color schemes (.INI files)
Convert
user converter files (.INI files)
Template
File / New / User Template offers skeletons for ASP, PHP, HTML, XML, XSLT...


 Context Files

makra

Context files contain information used for 2 important PSPad features; clips (Ctrl-Space) and auto-completion (Ctrl-J).

Context files are stored in the /Context sub-directory of you main PSPad folder with a .DEF file extension. The format of these files is described below

Context File Format
The context file has 3 main sections; clip definitions, clip macro definitions, and keywords used for auto-completion.

Clips are templates or pieces of boilerplate code that can be placed at the cursor position in your file. Some of these clips can operate on selected text in a file. Go to the chapter entitled Clips for more information.

The clip macro definitions referred to here are used in 'interactive clip' definitions. These interactive clips make it possible to have blocks of code generated from templates but unlike standard clips, the user can supply values to influence the output. Go to the chapter entitled Interactive Clips for more information.

Auto-completion is a mechanism designed to speed code entry. Auto-completion, when called, will display a popup list of words matching that which you have entered. This list will be made up initially from words listed in the [Keywords] section of the .DEF file. The system will also include words from the file you are working on so that, as you type, things like variable names, etc are added to the list.

There are a number of context files supplied with PSPad. They have the same name as the highlighters they are used with. The context files supplied include:

· ASP.def
· Bat.def (MS-Dos batch files)
· CPP.def (C++)
· CSS.def (Cascaded style sheets)
· FoxPro.def
· HTML.def
· Java.def
· JavaScript.def (JavaScript)
· Pascal.def
· Perl.def
· PHP.def
· VBScript.def (Visual Basic script)
· XML.def


 Clips

Every clip consists of a name, a description and some content. The name and description is displayed in the clip list that pops up when you call it with the shortcut Ctrl-Space. The selected clip's content is inserted at the cursor position. The content of a clip can be an unlimited number of lines and the structure of the clip in the definition is kept when it is inserted into your file. The clip definitions are not fixed and you can edit the existing definitions or add your own. Note: The .DEF files are usually reinstalled with each new version of PSPad so if you edit them you should ensure that you have copies before installing any upgrades.

How to Call a Clip:
Pressing Ctrl-Space will produce the entire list of clips in the file. You can scroll up and down the list to find the entry you want and the press Enter or click on it with the mouse to select it. You can also start to type the name of the clip entry you want and the list will scroll to the closest match. If you enter the name of the clip you require, or part of it, before pressing Ctrl-Space the list will open at the closest match. You can also assign a keyboard shortcut or 'Hotkey' to a particular clip (see Settings Menu for details). Clips with a keyboard shortcut are also listed under the 'Settings / Clips Hotkeys' menu. If you type the full clip name then pressing Shift-Space will entry the clip's content directly into the file without displaying the clip list.

Clip file Format
The clip definition format is very simple:

[name |x description]*shortcut

[ - This a required character.
name - This is the name of the clip that will appear in the clip list and will appear in a bold font.
| - This is a required character that separates the clip name from the description.
X - This (optional) character sets the colour that the clip entry will appear as in the list. Choose one of:
M maroon
R red
N navy
B blue
P purple
F fuchsia
G green
D dark gray
* - This character is optional and is only required if a shortcut or hotkey is to be defined for the clip.
shortcut - This entry is only required if a shortcut or hotkey is defined. If multiple keys are required for the hotkey then they should be key1+key2. The list of non-alphabetic keys is:
Ctrl
Alt
Shift
F1 ... F12
PGDN
PGUP
DEL
ENTER

The clip content starts on the line immediately after the definition and continues until the start of the next definition or the end of the file.

The content is entered into your file exactly as it is entered here. There are 2 special characters that you can use in your content; | and § (ALT+167). When your clip is used the cursor will be placed at the position occupied by the | character. If you include this character more than once in your clip content then only the first position will be used. If you have any text highlighted in your file when you call the clip and the clip's content includes the § character then that character will replace the selected text. You can use the § character multiple times; each occurrence will be replaced with the selected text in your file.

You can add comments to the clip definition by starting the line with a semicolon (;). If your clip content needs to include a line that starts with e colon, enter a double colon (;;).

Note: You cannot have a line in your clip content that starts with the open square bracket ([) character as this marks the beginning of the next clip definition.

Example:
[Alert | Alert]*Ctrl+Alt+A
alert("§|");


 Interactive clips

This chapter assumes you've read and understood the chapter on Clips.

What are Interactive Clips?
Clips insert text in to your file. Standard clips insert fixed text defined by the clip content. Interactive clips allow you to modify the content of the clip definition before it is inserted into your file using clip macros. You do this by defining your clip macros to use various Windows controls such as text boxes, combo boxes and checkboxes.

How do they work?
The basis of interactive clips is the control definition in the section [Macro definition] at the top of the .DEF file. This section contains all of the common definitions for all of the clips in this particular .DEF file. The clips macros are all stored at the top of the file so that they can be used in many clip definitions.

Note: When an interactive clip is called if no value is entered for a particular macro and that macro has no default value then nothing from that macro will be inserted in to your file; if you need an empty value for a particular macro you must enter a space.

Clip Macro Format:
The clip macro format is as follows

%control%=@x caption,text,default,options,delimiter,dialog_type

%control% The name used in the clip body. The name must contain only alphanumeric characters - no spaces or punctuation characters.
@x    Type of control. One of
@-- = Separator
@C = Combo box
@D = Date dialog
@E = Text box
@F = Font selection dialog
@K = Checkbox
@L = Colour picker dialog
@O = File Open dialog
@P = Picture selection dialog
@S = Directory selection dialog
@T = Topstyle
See below for further details.
caption This text will appear as a label for the control in the dialog.
text Optional fixed text that will be inserted into your file immediately the value you enter in to the control.
default The default value. This value will be used if you don't enter a value of your own in to the control. (optional)
options Depends on the control used, see below (optional).
delimiter These optional Characters will be inserted around value entered into the control (optional). Note: If you use a value for 'text' (see above) this value will not be bracketed by the delimiters.
dialog_type Only used when @x = @O (optional). One of:
A = Absolute path and slash type, or
R = Relative path and slash type
If this value is blank then and the file being edited is an HTML file then the path returned by the control will be relative to the file's path and the path delimiters will be slashes (/). Otherwise the path returned will be absolute and will use backslashes (\).

If you need to include a comma in the value supplied, say, as 'default' or 'options' you need to enclude the comma in quotes.

You don't need to include the optional items although you do need to include the correct number of separating commas if you want to include one of the latter optional items without supplying a value for an earlier one. Special chars or values with spaces would be entered inside double quotes.

Control types:
@-- = Separator
This produces separator line only

@C = Combo box
This produces a list of values from which the you can select one. The list is entered as a semicolon-separated list of values for the options parameter. If the values contain spaces then they must be enclosed in spaces.

Examples:
%combo1%=@C Centering type:,CENTER=,left,left;right;center,"
%RGB%=@C RGB color:,RGB=,,"255,255,255";"#FFFFFF";"FF;FF;FF";"FF FF FF","

@D = Date dialog
This produces a control that allows you to enter a date. The control also allows you to call up a calendar to use to select the date required.

Example:
%date%=@D Date:,DATE=,,,"

@E = Text box
This is a normal edit textbox to enter general value. If your supply no control type in the clip macro definition, @E is assumed.

@F = Font selection dialog
This produces a combo box containing a list of all fonts installed on the system.

Example:
%fonts%=@F Font face:,font-face=,,,"

@K = Checkbox
This produces a simple checkbox control. If the value of Default is not blank then the control is initial checked.

Examples:
%check%=@K No shade,NoShade
%check%=@K Remember,REMEMBER,,,!!!

@L = Colour picker dialog
This produces the standard Windows colour picker dialog.

@O = File Open dialog
This produces the standard Windows File Open dialog. The options parameter can contain file filters.

Examples:
%file%=@O Reference:,HREF=,,Html files (*.htm;*.html)|*.htm;*.html,"
result: HREF="project/files/soubor.htm"

%file%=@O File:,,,PAS files (*.pas)|*.pas,',A\
result: 'c:\temp\soubor.pas'

%file%=@O File:,,,C files (*.c)|*.pas,,R\\
result: project\\source\\soubor.c

@P = Picture selection dialog
This produces the standard Windows Picture Open dialog.

@S = Directory selection dialog
This produces the standard Windows Directory Select dialog.

@T = Topstyle
This invokes the TopStyle CSS editor. Note: You must have previously installed TopStyle for this to work.

Using clip macros.
You use the clip macros you have defined by simply inserting the clip macro name, bracketed by percent signs (eg %mymacro%) in the clip definition. You can use the same control name several times throughout a clip body. When you do the control appears only once in the dialog when the clip is called but the value entered is inserted to the every occurrence of control in clip body.

When a clip is called that uses a clip macro, the dialog that is displayed has 3 buttons: OK, Repeat and Cancel. The function of the OK and Cancel buttons sis self-explanatory. The Repeat button functions a little like the OK button except that is does not dismiss the dialog. Instead the clip text is entered in to your document and the macro 'resets' itself so that you enter another set of values.

Example 1:

[Macro definition]
%file%=@O Reference:,HREF=,,Html files (*.htm;*.html)|*.htm;*.html,"
...
[ahref | simple reference <a href=...>...</a>]
<a %file%>|</a>

When the clip is called you will see a file open dialog. Once a file is selected the inserted text will look something like:

   <a HREF="choosen file.htm"></a>

and cursor will be positioned then the "|" character appears in the clip definition.

Example 2:

[Macro definition]
%proc%=@E Procedure name:
%autor%=@E Author name:
...
[proc | procedure base]
// Procedure: %proc%
// Author: %autor%
procedure %proc%;
begin
|
end; {procedure %proc%}

When the clip is called you will see a dialog with two text boxes. Once values for 'Procedure name' and 'Author name' are entered the result will look something like:

   // Procedure: ShowDialog
   // Author: Jan Fiala
   procedure ShowDialog;
   begin

   end; {procedure ShowDialog}

Note how the clip macro %proc% has been used more than once in the clip macro definition.

Example 3:

[Macro definition]
%Number%=@E, Enter Number ," ,",,,

[number | number with comma]
%number%

After calling the clip and pressing the Repeat button a number of times a series of numbers and commas will be inserted like this:

   ,123, 456, 12, 5


 Template Files

Template files allow you to create boilerplates for various file types. For example, if you were working on a particular web project you might have just 2 or 3 page layouts that you use where only the content is different. In this case it would save a great deal of effort if you could create a new file with all of the markup done so you only had to enter the actual content.

PSPad allows you to have any number of different template files for any file type.

How do I create a template?
Simply open a new file and save it in the /Templates directory with the correct file extension. You can save your template with any (legal) name you like but if you create a template with the name 'default' then each time you create a new file based on that file type a copy of your template will be used.

Example - Creating a default template for JavaScript files:
Create a new text file.

Enter the following text:

/* ******************************************* */
/* File Name:                                  */
/* Author:                                     */
/* Description:                                */
/* ******************************************* */

Save the file as default.js in the /Templates directory (there may be one in there already so rename it before saving your own).

Now, select the File / New menu option and choose 'New File' and 'JavaScript' from the dialog box. The system will create a file called something like 'New1.js' and the file will contain the text that you entered in to the template.

How do I use a template other than the default one?
Each file type with at least one defined template is included on the tree view that is displayed when you select the File / New menu option and click on the Use Template' radio button (see below).

usetemplate

Simply double-click on the template you require and it will be loaded.

Remember: The name you save your template file with will be what is displayed in the dialog box show above, so try and give your files meaningful names.

At the bottom of the dialog, you will see a checkbox marked 'File name same as Template name'. Normally PSPad creates file with a name like 'New1' with the relevant extension. If you check this box then the file name will be the same as the template name, so, for example, if you checked the box and then double clicked on the 2nd entry in the HTML template list, your file will be called glossary.html.


 Save Desktop

What does it mean?
This means that PSPad will remember which files are open when you close the program and then reopen them all when the program is restarted. If you check 'Save File State' in Program Settings / Files and Dirs PSPad will also remember the cursor position, highlighter, bookmarks, etc for each file you have open..

How do you enable desktop saving?
Details of how to enable / disable desktop saving can be found in Program Settings / Files and Dirs.

Philosophy (how it works)
If desktop saving is disabled then no record is kept of which files are open when the program exists and so when PSPad restarts it opens in the default state using the option 'Auto Open New File after Start' described in Program Settings / Program.

If you set desktop saving to be on all the time then starting PSPad by say, double-clicking on a file in Windows Explorer, and then exiting PSPad again will cause the system to reopen that file when you next start PSPad.

The third option for desktop saving means that only files opened directly in PSPad, rather than by, say, double-clicking in Windows Explorer, or dragging and dropping a file on to the PSPad.exe file, are remembered on the desk top. What this means in practice is that you can have a project open and 'remembered' on the desk top, close PSPad and then later open PSPad via Windows Explorer without having your 'remembered' desktop overwritten.


 HTML page - Example

· Open new HTML document. This will also load the clip definition file for HTML, including syntax highlighting.
· Press CTRL+SPACE, choose html (or write html and press SHIFT+SPACE) - you get HTML page base structure
· Use other clips (CTRL+SPACE) or their assigned shortcuts (chapter about clips) to write what you need.
· Create or open other pages
· I recommend you use clips shortcuts like CTRL+Enter, CTRL+B, CTRL+I, .... See what these hotkeys do at: Settings / Clips Hotkeys, (This is empty if there are not shortcuts assigned in the .DEF file for this file type.) For example, when you are in an HTML document, CTRL+B creates a set of bold tags <b></b> with your cursor in the middle of them. If you select your text before hitting CTRL+B, the text will be surrounded by the bold tags.
· Mark main HTML page (index.html) as "Main page" - Ctrl+M for better visibility.
· Press F10 anytime to see result of your work in the default application, which in this case is the built-in browser.
· Press SHIFT+CTRL+E to see Code Explorer for better code orientation

How to effectively use program

· after selecting a block of lines, you can increase or decrease indentation - SHIFT+CTRL+U SHIFT+CTRL+I or Tab / Shift+Tab
· use clips (CTRL+SPACE)
· Use hotkeys. Intead Ctrl+Space, select "B" tag, you can select your text and press Ctrl+B (in HTML document).
· you can use UNDO and REDO at any time
· you can simply reopen file before you save it, if you are not happy with your changes Ctrl+R
· use bookmarks for quick orientation in code CTRL+LEFT/Right, CTRL+DOWN/Up
· use context menu - right mouse button
· use help. Try pressing F1 in various contexts: in the Projects window, in a dialog box, when you mouse has highlighted a pull down menu item.
· explore and try the various menu tools. Some functions can save you a lot of work
·


File Menu

 Menu - File

filemenu

new New ... (Ctrl-N)
Create a new file. When selected, this option will display a dialog box that lists all the registered file types (see 'Customizing PSPad - Highlighter Settings'). You can choose from 3 options at the top of the form:

· New File
· Use Template
· Recent Files

New File
This option will open a new file of the selected type. Ordinarily this will be a blank file. However, if a file named 'default.???' (where ??? is the relevant file extension) exists in the \template sub-directory then that file will be used as the basis for the new file.

Use Template
This option will display a list of defined templates. These templates are stored in the \templates sub-directory. More than one template for each file type may exist and you can create your own. Once a template is selected it will be used as the basis for the new file.

There is a checkbox at the bottom of this window; 'File name same as Template Name'. When this option is unset, the newly created file will be called 'NewXX.???' (XX is a number and ??? is the appropriate file extension). When the option is set the file table will be whatever the description of the template was. For example the
template 'Simple HTML' will create a file called 'Simple HTML.html'.

Recent Files
The option will display a Most Recently Used (MRU) file list. Selecting one of the displayed files will open that file. In this respect, the function is 'open file' rather than 'new file'

Note: You can also invoke this dialog by double-clicking anywhere in the file name tabs toolbar.

fileopen Open ...(Ctrl-O)
Opens selected file as text

Open in HEX editor (Shift-Ctrl-O)
Opens selected file directly in HEX editor. You may open any file in the HEX editor, even binaries. Warning: You can ruin an .EXE or .DLL file with one bad character if you don't know what you are doing!

Open Special
See Open Special.

closefile Close File (Ctrl-F4)
Closes the current file. If the file has not been saved you will be prompted to save it.

Close All
Close all files include project

projcompile Compile (Ctrl-F9)
Call the defined compiler. Enabled only if a compiler is set in highlighter settings or in Project Settings.

Open with Program
You can open active file in an external application. Programs are set in Highlighter settings individually for each environment. Note: The first 3 defined applications are assigned the shortcut keys F9, Alt-F9 and Shift-F9 respectively.

save Save (Ctrl-S)
Save the current file. If the file has not previously been saved then the 'File Save As' dialog will open first.

Save As... (F12)
Saves the current file with new name.

Move As...
Saves the current file to new location. The file is deleted from the old location.

saveall Save All (Shift-Ctrl-S)
Saves all changed files. If a file has not previously been saved the 'File Save As' dialog will open first.

Save to FTP
Saves active file to the open FTP connection.

Save Block As...
Saves the selected text as a file.

Export
See Export.

File Info
Shows file statistics.

General
Display word, line and character counts, file path and size, maximum line length date and time of file creation and last save.

Characters
View a count and frequency distribution of each character in the file.

Words
View a count and frequency distribution of each word in the file.

Read-only
Toggles file read-only status. When set as read-only the file name on the file tab is in italics.

print Print (Ctrl-P)
Print the current file.

preview Print Preview (Alt-P)
View a print preview of the current page

Page Settings
Set up page margins, control printing of page header, etc.

setting print Printer Settings
Set printer settings.

Exit (Alt-F4)
Exit program


 Open Special

openspecialmenu

Reopen Active File (Ctrl-R)
Reopen active file, discarding any unsaved changes made to it.

Open R/O Copy
Opens a new copy of active file as Read Only. Title in file tab is in Italics.

Open Active File with New Name (Ctrl-D)
Opens active file again with name you enter. It combines functions "Save as" and "Open"

Open file from Internet
Opens file specified by URL address directly from internet (http://....). Note: You can also open a file from Internet in an active FTP session, using either "Direct Edit in PSPad" or "Open as Text".

Open file appointed by selection
Opens file whose file name specified by the selected text. If file is URL address, file is open in default web browser. If you press CTRL key when calling this function the source code from web is displayed in PSPad.

There may be a number of files listed in the the line in this menu. This is the Most Recently Used (MRU) list. Clicking on any item in the MRU list will openingh.


 Export

exportmenu

sendtodisk save to drive A:
Equivalent to calling 'Save As' and choosing A: as the target drive.

mail4 As e-mail content
The current file is copied in to the body of a new mail message.

mail5 As e-mail attachment
The current file is saved as a file and the file is included in a new mail message as an attachment.

Export...
Save the current file, complete with syntax highlighting, as either RTF, HTML, XHTML or TeX file.

Export to clipboard as RTF
Save selected text. complete with syntax highlighting, in RTF format to the clipboard.

Export to clipboard as HTML
Save selected text. complete with syntax highlighting, in HTML format to the clipboard.

Export to clipboard as XHTML
Save selected text. complete with syntax highlighting, in XHTML format to the clipboard.

Export to clipboard as TeX
Save selected text. complete with syntax highlighting, in TeX format to the clipboard.


Project Menu

 Menu - Projects

projectmenu

projnew New Project...
Creates new project. If you have a project open you will be prompted, if necessary, to save the Project file. If you have any files from the project open you will also be asked if you want them to be closed before the new project is created.

There is no 'Close Project' option. If you explicitly want to close a project then select the 'New Project' option. The new project is not 'active' until at lease on file has been added to it.

Create Project from Directory...
This option allows you to select a directory on your disk (or from a network drive). Once you have made a selection PSPad will:
1. Name the project using the selected directory name;
2. Create virtual folders in the Project tree named for any sub-directories found off the selected directory
3. Add each file found in the directory structure on disk to the relevant folder in the Project tree.

projopen Open Project...
Opens existing project and restores the project's state.

projsave Save Project
Saves the Project file.

Open Folder Files
This option will open in PSPad all of the files in a virtual folder. This option is only available if you click on a virtual folder.

Close Folder Files
This option will close any files that are in a virtual folder if they are open in PSPad. This option is only available if you click on a virtual folder.

projfilemain Set as Main file for Compiler
Sets the file as main project file. If you run the compiler (see Compiler Settings) the file marked as Main is always sent to the compiler.

projectinfo Project Information
Shows the project information. For details see Working with Projects.

settings Project Settings ...
Shows the project settings. For details see Working with Projects.

The end of the menu will contain a Most Recently Used list of Project files; double-clicking on any one of them will open that Project file.


Edit Menu

 Menu - Edit

If file is in Read/Only mode, text changing function are disabled

editmenu

undo UNDO (Ctrl-Z)
This option undoes the last action. The number of actions you can undo is limited by the setting in Settings / Program Settings / Editor / Max UNDO Operations.

redo Redo (Shift+Ctrl+Z)
This option reapplies any actions undone using the Undo option.

cut Cut (Ctrl+X)
Cuts the selected text and places it in the Windows clip board. The action taken if no text is selected is controlled by Settings / Program Settings / Editor / Extended Cut and Copy. This option is not available if no text is selected and 'Extended Cut and Copy' is not checked.

copy Copy (Ctrl+C)
Copies the selected text and places it in the Windows clip board. The action taken if no text is selected is controlled by Settings / Program Settings / Editor / Extended Cut and Copy. This option is not available if no text is selected and 'Extended Cut and Copy' is not checked.

paste Paste (Ctrl+V)
Places any text in the Windows Clipboard in to the file at the cursor position.

Special Paste
See Special Paste .

delete Delete (Del)
Deletes the selected text. This option is not available if no text is selected.

Lines Manipulation
See Lines Manipulation.

Insert Date Time (Alt+D)
Inserts the current system Time and Date based on the currently selected option in the Date Dialog.

calendar Date Dialog
See Date Dialog.

Insert GUID
This option generates a GUID (Global Unique IDentifier) and inserts it at the cursor position.

Select All (Ctrl+A)
Selects all the text in the file.

Select Inside Brackets (Ctrl+Shift+M)
This option selects all of the text between the following types of brackets <>, {}, [], (). The cursor must be between the brackets for this option to function. The brackets themselves are not selected. Brackets can be nested; this option will select all the text in the innermost set of brackets that the cursor is in.

Select String (Ctrl+Shift+#)
This option only works if the cursor is somewhere within a quoted string and will cause the whole of the string, complete with the enclosing quotes, to be selected. Note: You can nest quotes, but the inner quote character must be different to the outer ones.

A related option is called using Ctrl+#. This option does the same as 'Select String' above but does not include the quotation marks in the selection.

Select Tag (Ctrl+Shift+T)
This function only works if the cursor is somewhere inside an opening tag and is only available when editing files associated with the HTML and XML highlighters. The option will cause all of the text from the beginning of the opening tag to the end of the closing tag to be selected. This will work when tags with the same name are nested.

sort Sort...
See Sort.

Selection Type
See Selection Type.


 Special Paste

specpaste

Paste as HTML
If you copy formatted text from some MS product IE or Word, for example - you may paste this into a document along with all the HTML code generated by the source program.

Paste without Cursor Change (Ctrl+Shit+V)
Normally when you paste text in to a file the cursor is moved to the end of the inserted text. If you use this option rather than the normal paste option, the cursor will remain in the place it was before the paste operation

insertfile Insert from File
This option allows you to choose a file the contents of which are inserted in to your file at the cursor position.


Lines Manipulation

 Line Manipulation

lineman

Copy Line (Alt-J)
A copy of the current line is placed on the line immediately below it.

Swap with Line Below
Current line is swapped with the one below it.
If some text is selected, this function swap all lines from block to reverse order

Insert Text into lines (Alt+I)
See Insert Text Into Lines.

Remove Email Quoting
This option removed the '> ' characters that mark quoted lines in email messages. This option will operate on the entire file unless there is highlighted text.

Remove Redundant Spaces
This option will give you the option of removing leading and/or trailing spaces from the text as well as 'compressing' any spaces within a line to a single space. This option will operate on the entire file unless there is highlighted text.

Remove Blank Lines
This option will remove any completely blank lines in either the highlighted text or the entire file.

Remove Redundant Blank lines
This option will 'compress' multiple blank lines in the selected text, or entire file, to a single blank line.

Remove Accent from chars
Function specifically for Czech and Slovak users

Add Accent Marks
Function specifically for Czech and Slovak users

Convert Tabs to spaces
Converts tab characters (09h) to corresponding number of spaces (See Tab Width in Program Settings / Editor and Highlighter Settings).


 Insert Text Into Lines

This option is used to:
· Insert text at the beginning or end of a line;
· Insert text at a specified cursor position;
· Insert line numbering;
· Insert bullets.

textinsert

At Front of Lines
This causes the text to be entered at the left margin not before the first character. This means there will be spaces/tabs between the inserted text and the first character on the line if the line is indented.

At End of Lines
This causes the text to be entered immediately after the last character on the line.

Before Character Number
This causes the text to be inserted at the column named in the text box. If a line is too short to have a column at the named position then the character is added to the line at the end.

The item marked 1 in the picture is where the text to be inserted is entered. This is a drop down list of any entries that have been made in this dialog in this session of PSPad.

The item marked 2 in the picture is an indication of the current cursor position. If the Before Character Number option is selected you can click on this figure to automatically set it as the column position in which text will be entered.

Numbering
This option allows you to insert numbering at the start of every line in the file or every highlighted line.

The values marked 3 in the picture above show you how your numbering will look when applied.

The value entered in the box marked 4 in the picture is used as the starting value.

The value entered in the box marked 5 in the picture determines how many characters will be used for the numbering. The numbers are left-padded with zeros.

The character(s) entered in the boxed marked 6 above are used to separate the numbering characters from the text on the line.

Bullets
This option inserts bullet marks at the front of each line.

Note: You should switch Word Wrap off before using any of these functions.


 Special Conversion

specialconversion

Decimal <-> Hexadecimal
These options convert the highlighted text between decimal. and hexadecimal. The functions will only work if the selected text contains a valid string in the source base. That is, trying to convert the string '99' from decimal to hex will work (63) but trying to convert the string 'cat' won't. Similarly the string 'ACE' would convert from hex to decimal (2766) but 'AXE' will not. The function will only work on one 'word' at a time so the string '112 113 114' would have to be converted in 3 parts.

ANSI <-> URL
These functions convert text to encode/decode characters that are not normally allowed in URLs to a form that is acceptable. For example SPACE is converted to %20. If no text is highlighted then these functions will operate on the entire file. Note: encoding multi line files will cause the system to include the string %0D%0A to represent each line break. Further information about the format of URLs can be found here.

ANSI <-> Quoted Printable
This functions operate very much line the ANSI<->URL functions above but the encoding style is different. For example SPACE is not converted and line break is encoded as =0D=0A. There are a number of internet sites with more information on this subject. Try google to find out more.

Remove Accents from Chars
This function converts accented characters to their non-accented equivalents.

Add Accent Marks
This option is primarily for use by those use dictionaries with accented words. If you highlight a word that has been entered without any accented characters but does have them in the dictionary selecting this option will change the word accordingly.

Convert Tabs to Spaces
This option removes any tabs in the file and replaces them with the number of spaces defined in Program Settings / Editor / Tab Width.


 Date Dialog

datedialog

Selecting a date format
You can simply double-click on one of the formats shown in the list and have the current date/time inserted in to your file in that format. Alternatively you can highlight an entry in the list and press ENTER or click on the OK button.

Add
To add a format of your own to the list enter a format picture in the text box at the bottom of the dialog box and press the Add button. The format picture is made up of the following values:

Date
d, dd The day of the month without/with a leading zero.
ddd The 3-letter abbreviated day name.
dddd The full day name.
ddddd The date in the Windows 'Short Date' format.
dddddd The date in the Windows 'Long Date' format.
m, mm The month number without/with a leading zero.
mmm The 3-letter abbreviated month name.
mmmm The full month name.
yy, yyy The year without/with the century.
c Displays the date according the Windows 'Short Date' format followed by the time in the Windows 'Long Time' format.

Time
h, hh Hours past midnight without/with a leading zero.
n,nn Minutes past the hour without/with a leading zero.
s, ss Seconds past the minute without/with a leading zero.
t Displays the time according to the Windows 'Short Time' format.
tt Displays the time according to the Windows 'Long Time' format.
am/pm When used after a time format will display the 'h' component in 12-hour clock format and show 'am' for hours before noon and 'pm' for hours after noon. AM/PM can be used instead to force the display to upper case.

Note: The Windows 'Long Date', 'Short Date', 'Long Time' and 'Short Time' formats are set in the Windows Control panel.

There is also a 'special' format: RFC. This format enters the date/time in to the file with the following format:

ddd, d mmmm yyyy hh:nn:ss z

Where 'z' is the timezone. Note that the format value 'z' above is not enterable in user formats.

To include a literal string include it in single or double quotes. So, for example to Alt+D insert something like:

Last Updated on 2004-01-14 17:00

You would enter a date format like this:

'Last Updated on' yyyy-mm-dd t

Replace
To replace an existing format, click one on it, change the format picture and press the Replace button.

Delete
To delete a format, click one on the item to be deleted and press the Delete button.


 Sort

sortdialog

This dialog allows you to control how sorting is performed.

Direction
Ascending / Descending
Set sort order

Case Sensitive
When checked, the sort is case sensitive.

Remove Duplicates
When checked, as well as sorting the file duplicate lines are deleted.

Sort By
Ansi Value
Sort using character set rules.

ASCII Value
Sort using character's ASCII value.

Numeric Value
Sort treating the characters as numbers.

Unless using Numeric Value you may not get the sorting you expect when lines start with a number. Experiment to find the most suitable Sort By option for you needs.

Advanced
Specify Column
Normally sorting compares the characters of the entire line. Checking this option allows you to limit the values the sort operates on.

Column Begin / Column End
Sets the column positions between which the sort compares to determine the line position.


SelectionType

 Selection Type

This allows you to set the way text highlighting works.

selectiontype

You can select text by clicking and dragging with the mouse button held down or moving the cursor with the shift button held down. The status bar will display an icon (in the position shown below) to indicate the selection type in force.

statusbar1

What are the different selection types?
Normal Selection (Ctrl+Shift+N) Stats bar icon: selectionn
This is the 'standard' type of selection found in may Windows applications. Below is an example of text selected using Normal Selection.

selectionneg

Column Selection (Ctrl+Shift+C) Status bar icon: selectionc
This setting allows vertical blocks of text to be selected. The image below shows an example of text selected using Column Selection. The option Settings / Program Settings / Editor / ALT Sets column mode allows the selection mode to be switched to Column Mode when selecting with the mouse by simply holding down the ALT key.

selectionceg

Note: Column Mode is not available when Word Wrap is enabled.

Line Selection (Ctrl+Shift+L) Status bar icon: selectionl
This setting causes only complete lines to be selected. Below is an example of text selected using Line Selection.

selectionleg


Search Menu

 Menu - Search

If file is in Read/Only mode, text changing function are disabled

searchmenu

find Find... (Ctrl+F)
Opens the Find dialog. See Search and Replace.

replace Replace... (Ctrl+H)
Opens the Replace dialog. See Search and Replace.

Find Next (F3)
Uses the previously entered search criteria to find the next occurrence, ie. one closer to the end of the file. This option is not available if a search has not been carried out.

Find Previous (Shift+F3)
Uses the previously entered search criteria to find the previous occurrence, ie. one closer to the start of the file. This option is not available if a search has not been carried out.

Next Occurrence of Current Word (Ctrl+Shift+Down)
Search for the next occurrence of the word under the cursor. If not text is selected (ie the cursor is just 'in' the word) then the first press of the shortcut selects the word and the 2nd and subsequent presses find next occurrence of it. This option is further controlled by the Settings / Program Settings / Editor / Whole Words for Find at Cursor setting.

Previous Occurrence of Current Word (Ctrl+Shift+Up)
Search for the previous occurrence of the word under the cursor. If not text is selected (ie the cursor is just 'in' the word) then the first press of the shortcut selects the word and the 2nd and subsequent presses find previous occurrence of it. This option is further controlled by the Settings / Program Settings / Editor / Whole Words for Find at Cursor setting.

Incremental Search (Ctrl+E)
This option allows you to see the results of what you are searching for immediately. After calling this function an edit field (with yellow background) appears on status bar. What you type is immediately searched for in the editor from cursor position to end of file. Any matched text will be highlighted (see below). This function will only find the next occurrence of the word you are typing.

incrementalsearch

Goto Line (Alt+G)
This option produces the dialog below and allows you to move the cursor to the position detailed.

gotoline

Matching Bracket (Ctrl+M)
Search for matching bracket. If the cursor is places immediately before or after any of the bracket characters and then this option is called the cursor will be moved to the point immediately before the matching bracket.

The bracket characters are (), [], {}, and <>.

filesearch Search/Replace in Files (Alt+F)
See Search and Replace in Files.

G Google Search...
See Google Search.

Create Bookmark (Ctrl+Shift+0 ... Ctrl+Shift+9 / Alt+Left/Right)
This option opens a list of available book marks. When an unallocated one is selected the current line is bookmarked. If you click on an allocated bookmark it is deallocated. The shortcut Alt+Left allocates the next available bookmark to the current line. Alt+Right deallocates a bookmark if one is set for the current line.

Goto Bookmark (Ctrl+0 ... Ctrl+9 / Alt+Up/Down)
This option produces a list of bookmarks and will move the cursor to the bookmarked spot in the file if an allocated bookmark is selected. The keystroke Alt+Down will take you to the next bookmarked point in the file, Alt+Up will take you to the first bookmarked point in the file before the cursor position.


 Search and Replace

The dialogs for Find and for Replace are very similar, so this page will just discuss the Replace dialog and point out the changes where necessary.

replacemenu

Find
There are 2 controls here; one in which you enter your search criteria and a button that provides popup help on regular expressions. When you call up the Find dialog the Find box will be prefilled with the word under the cursor. You can type over the entry if you are looking for another word. There is also a dropdown list of phrases previously searched for.

The button brings up the popup help shown below.

findrehelp

For details on using regular expressions in your Find and Replace queries, see Regular Expressions.

Replace (Replace dialog only)
There are 2 controls here; one in which you enter the replace string and a button that provides popup help on the regular expressions you can use when replacing text. When you call up the Replace dialog, the Replace box will be filled with the last string you entered in it. If this is the first time you have called the Replace dialog since starting PSPad then the Replace box will be empty. You can type over any text in box. There is also a dropdown list of strings previously used.

The button brings up the popup help window shown below.

replacerehelp

Options
Case Sensitive
When this option is set the search is done case sensitively. That is to say, for example, that 'Dog', 'DOG' and 'dog' are all treated as different words whereas they are not if the option is not set.

Whole Words Only
When this option is set the system will only find complete words matching the search criteria. So, for example, if 'cat' is the search string the system will not match occurrences of words like 'category' or 'concatenate'.

Prompt Each Replace (Replace dialog only)
Replace usually replaces all matching text in one go. When this option is set PSPad will prompt for confirmation before each change.

Regular Expressions
See Regular Expressions.

Direction
The direction to search. Note: This option is ignored if searching in selected text.
Forward
Search from the cursor position to the end of the file.

Backward
Search from the cursor position to the beginning of the file.

Entire Scope
Search the entire file. In effect, this option moves the cursor to the and searches forward to the end of the file.

Scope
Global
Search the entire file.

Selected Text
Search just the selected text

Copy
This option copies the lines that contain the search text to a new file called 'Search Results'. See the image below for an example.

searchcopy

Note: The Copy option will create multiple copies of a line in the Search Results file if the search value is matched more than once on a line.

Add Line Numbers
If this option is set then the 'Search Results' file created using the Copy button will have lines numbers prepended to each line. These numbers represent the line in the original file.

Count
The option causes PSPad to present a dialog showing the number of matches there are in the current file of the search criteria.

List
List works like copy except it shows the results in the LOG pane rather than as a new file.


Search and Replace in Files

 Search/Replace in Files

Find in files only works with files on disk. If you have edited a file you will find your changes will not be seen by Find in Files routine unless those files are saved before calling it.

searchinfiles

Search/Replace
Text to Find
The text to search for.

Replace With
If checked allows a value to be included to replace the any matches of the search condition.

Whole Words Only
When this option is set the system will only find complete words matching the search criteria. So, for example, if 'cat' is the search string the system will not match occurrences of words like 'category' or 'concatenate'.

Case Sensitive
When this option is set the search is done case sensitively. That is to say, for example, that 'Dog', 'DOG' and 'dog' are all treated as different words whereas they are not if the option is not set.

Prompt Each Replace
Replace usually replaces all matching text in one go. When this option is set PSPad will prompt for confirmation before each change. This option is only available if 'Replace With' (above) is checked.

Files Code Page
Sets the 'Text to Find' value to the selected code page for matching with the file contents.

Search Scope
Project Tree
Search all files in the current Project Tree.

Open Files
Search only the currently open files?

Selected Directory
Search all the files in the selected directory. There is a button next to the text entry area that allows you to navigate you file system to select the directory required.

File Masks
This option allows you to limit the files searched when setting 'Selected Directory' as the search scope. The filer is a list of semicolon (;) separated file masks. Example masks include:

*.* (All files)
*.js (Javascript files)
ab*.* (all files beginning 'ab')

Include Sub-directories
When checked the search will include all sub-directories below the selected directory. This option is only available if the search scope is 'Selected Directory'

Search Result
The search result are displayed under the 'Search in Files Results' LOG window.

Click on a file bar to expand it and list the line numbers that match the search criteria or, if the bar is already expanded, to close it.

In an expanded file bar, double-click on a line to load the file in to PSPad and have the cursor move to the selected line.

findinfilesresults

There is a toolbar on the left hand side of the LOG window when viewing the Find in Files results

fificonopen Expand All
This expands all the file bars in the results window.

fificonclose Collapse All
This collapses all of the file bars in the LOG window.

fificonopenall Open All
This opens all of the files listed in the results window in PSPad.

fifopennew Open results in new document
This creates a new file with a report of all the matches found. See below for an example.

fifopenneweg

Note:
· Search in Files works only with files on disk. So I recommend you save all open files before searching / replacing if those files are in search scope.
· Find and read 2 times before you run Replace! Changes cannot be undone!
· There is no option for Regular Expressions in Search / Replace in Files.


 Google Search

This option will submit a query to Google. Note: You must have a functioning internet connection for this option to work correctly.

googlesearch

Simple Search
Enter a phrase or keyword to search for.

Advanced Search
All Words
Google will only return pages that contain all of the words typed in this box.

Exact Phrase
Google will only return pages that contain the exact phrase typed here. If you have text highlighted in you file when calling up the google search it will be copied in to this box.

Any Word
Google will return any pages that contain any of the words typed in this box.

Except Words
This box is used to limit the pages that might be selected by one of the above options and causes Google to discard any pages that include the words included here. This option, if used on its own, will not return any pages.

Search Server Only
You can search one of a number of servers selected from this dropdown list rather than searching the google server's

Results on a page
This option allows you to set the number of pages listed on each page.


 Regular Expressions

What are regular expressions ?
Regular Expressions are a widely-used method of specifying patterns of text to search for. Special metacharacters allow you to specify, for instance, that a particular string you are looking for occurs at the beginning or end of a line, or contains n recurrences of a certain character.

Regular expressions may look ugly to novices, but are actually a very simple, handy and powerful tool. (well, usually simple ;) )

Simple Matches
Any single character matches itself, unless it is a metacharacter with a special meaning described below.

A series of characters matches that series of characters in the target string, so the pattern "bluh" would match "bluh'' in the target string. Quite simple, eh ?

You can cause characters that normally function as metacharacters or escape sequences to be interpreted literally by 'escaping' them. Do this by preceding them with a backslash "\". For instance: metacharacter "^" match beginning of string, but "\^" match character "^", "\\" match "\" and so on.

Examples:
foobar          matches string 'foobar'
\^FooBarPtr     matches '^FooBarPtr'

Escape Sequences
Characters may be specified using a escape sequences syntax much like that used in C and Perl: "\n'' matches a newline, "\t'' a tab, etc. More generally, \xnn, where nn is a string of hexadecimal digits, matches the character whose ASCII value is nn. If You need wide (Unicode) character code, you can use '\x{nnnn}', where 'nnnn' is one or more hexadecimal (base 16) digits (1,2,3,4,5,6,7,8,9,A,B,C,D,E,F). Hex digit letters may be in upper or lower case.

  \xnn     char with hex code nn
  \x{nnnn} char with hex code nnnn (one byte for plain text and two bytes for Unicode)
  \t       tab (HT/TAB), same as \x09
  \n       newline (NL), same as \x0a
  \r       car.return (CR), same as \x0d
  \f       form feed (FF), same as \x0c
  \a       alarm (bell) (BEL), same as \x07
  \e       escape (ESC), same as \x1b

Examples:
foo\x20bar   matches 'foo bar' (note space in the middle)
\tfoobar     matches 'foobar' predefined by tab

Character Classes
You can specify a character class, by enclosing a list of characters in [], which will match any one character from the list. If the first character after the "['' is "^'', the class matches any character not in the list.

Examples:
foob[aeiou]r   finds strings 'foobar', 'foober' etc. but not 'foobbr', 'foobcr' etc.
foob[^aeiou]r  find strings 'foobbr', 'foobcr' etc. but not 'foobar', 'foober' etc.

Within a list, the "-'' character is used to specify a range, so that a-z represents all characters between "a'' and "z'', inclusive.

If You want "-'' itself to be a member of a class, put it at the start or end of the list, or escape it with a backslash. If You want ']' you may place it at the start of list or escape it with a backslash.

Examples:
[-az]      matches 'a', 'z' and '-'
[az-]      matches 'a', 'z' and '-'
[a\-z]     matches 'a', 'z' and '-'
[a-z]      matches all twenty six small characters from 'a' to 'z'
[\n-\x0D]  matches any of ASCII #10(Lf),#11,#12(Ff),#13(Cr).
[\d-t]     matches any digit, '-' or 't'.
[]-a]      matches any char from ']'..'a'.

Metacharacters
Metacharacters are special characters which are the essence of Regular Expressions. There are different types of metacharacters, described below.

Metacharacters - Line Separators
^      start of line
$      end of line
\A     start of text
\Z     end of text
.      any character in line

Examples:
^foobar     matches string 'foobar' only if it's at the beginning of line
foobar$     matches string 'foobar' only if it's at the end of line
^foobar$    matches string 'foobar' only if it's the only string in line
foob.r      matches strings like 'foobar', 'foobbr', 'foob1r' and so on

The "^" metacharacter by default is only guaranteed to match at the beginning of the input string/text, the "$" metacharacter only at the end. Embedded line separators will not be matched by "^'' or "$''. You may, however, wish to treat a string as a multi-line buffer, such that the "^'' will match after any line separator within the string, and "$'' will match before any line separator. You can do this by switching On the modifier /m.

The \A and \Z are just like "^'' and "$'', except that they won't match multiple times when the modifier /m is used, while "^'' and "$'' will match at every internal line separator.

Metacharacters - Predefined Classes
\w     an alphanumeric character (including "_")
\W     a nonalphanumeric
\d     a numeric character
\D     a non-numeric
\s     any space (same as [ \t\n\r\f])
\S     a non space

You may use \w, \d and \s within custom character classes.

Examples:
foob\dr     matches strings like 'foob1r', ''foob6r' and so on but not 'foobar', 'foobbr' and so on
foob[\w\s]r matches strings like 'foobar', 'foob r', 'foobbr' and so on but not 'foob1r', 'foob=r' and so on

TRegExpr uses properties SpaceChars and WordChars to define character classes \w, \W, \s, \S, so You can easely redefine it.

Metacharacters - Word Boundaries
\b     Match a word boundary
\B     Match a non-(word boundary)

A word boundary (\b) is a spot between two characters that has a \w on one side of it and a \W on the other side of it (in either order), counting the imaginary characters off the beginning and end of the string as matching a \W.

Metacharacters - Iterators
Any item of a regular expression may be followed by another type of metacharacters - iterators. Using this metacharacters You can specify number of occurrences of previous character, metacharacter or subexpression.

*      zero or more ("greedy"), similar to {0,}
+      one or more ("greedy"), similar to {1,}
?      zero or one ("greedy"), similar to {0,1}
{n}    exactly n times ("greedy")
{n,}   at least n times ("greedy")
{n,m}  at least n but not more than m times ("greedy")
*?     zero or more ("non-greedy"), similar to {0,}?
+?     one or more ("non-greedy"), similar to {1,}?
??     zero or one ("non-greedy"), similar to {0,1}?
{n}?   exactly n times ("non-greedy")
{n,}?  at least n times ("non-greedy")
{n,m}? at least n but not more than m times ("non-greedy")

So, digits in curly brackets of the form {n,m}, specify the minimum number of times to match the item n and the maximum m. The form {n} is equivalent to {n,n} and matches exactly n times. The form {n,} matches n or more times. There is no limit to the size of n or m, but large numbers will chew up more memory and slow down r.e. execution.

If a curly bracket occurs in any other context, it is treated as a regular character.

Examples:
foob.*r     matches strings like 'foobar', 'foobalkjdflkj9r' and 'foobr'
foob.+r     matches strings like 'foobar', 'foobalkjdflkj9r' but not 'foobr'
foob.?r     matches strings like 'foobar', 'foobbr' and 'foobr' but not 'foobalkj9r'
fooba{2}r   matches the string 'foobaar'
fooba{2,}r  matches strings like 'foobaar', 'foobaaar', 'foobaaaar' etc.
fooba{2,3}r matches strings like 'foobaar', or 'foobaaar' but not 'foobaaaar'

A little explanation about "greediness". "Greedy" takes as many as possible, "non-greedy" takes as few as possible. For example, 'b+' and 'b*' applied to string 'abbbbc' return 'bbbb', 'b+?' returns 'b', 'b*?' returns empty string, 'b{2,3}?' returns 'bb', 'b{2,3}' returns 'bbb'.

Metacharacters - Alternatives
You can specify a series of alternatives for a pattern using "|'' to separate them, so that fee|fie|foe will match any of "fee'', "fie'', or "foe'' in the target string (as would f(e|i|o)e). The first alternative includes everything from the last pattern delimiter ("('', "['', or the beginning of the pattern) up to the first "|'', and the last alternative contains everything from the last "|'' to the next pattern delimiter. For this reason, it's common practice to include alternatives in parentheses, to minimize confusion about where they start and end.

Alternatives are tried from left to right, so the first alternative found for which the entire expression matches, is the one that is chosen. This means that alternatives are not necessarily greedy. For example: when matching foo|foot against "barefoot'', only the "foo'' part will match, as that is the first alternative tried, and it successfully matches the target string. (This might not seem important, but it is important when you are capturing matched text using parentheses.)

Also remember that "|'' is interpreted as a literal within square brackets, so if You write [fee|fie|foe] You're really only matching [feio|].

Examples:
foo(bar|foo)  matches strings 'foobar' or 'foofoo'.

Metacharacters - Subexpressions
The bracketing construct ( ... ) may also be used to define r.e. subexpressions (after parsing, you can find subexpression positions, lengths and actual values in MatchPos, MatchLen and Match properties of TRegExpr, and substitute it in clip strings by TRegExpr.Substitute).

Subexpressions are numbered based on the left to right order of their opening parenthesis. First subexpression has number '1' (whole r.e. match has number '0' - You can substitute it in TRegExpr.Substitute as '$0' or '$&').

Examples:
(foobar){8,10}        matches strings which contain 8, 9 or 10 instances of the 'foobar'
foob([0-9]|a+)r       matches 'foob0r', 'foob1r' , 'foobar', 'foobaar', 'foobaar' etc.
(abc(def)ghi(123))xzy matches abcdefghi123xyz (the only match),

Then backreferences:
\1 = abcdefghi123,
\2=def,
\3=123,
\0=abcdefghi123xyz (the whole match)

We could find the same string using metacharacter Iterators with: (\w{3}([d-f]{3})...(\d*))xyz and the backreferences would have the same values. And yet the pattern would also match: '123fdd@#$4444xyz', 'bbbeeeabc1234567xyz', 'ddddddaaaxyz'

Metacharacters - Backreferences
Metacharacters \1 through \9 are interpreted as backreferences in the Find text box. When used outside of the regular expression, such as in the Replace field, metacharacters $1 through $9 are interpreted as backreferences to the last find.

\<n> matches previously matched subexpression #<n>.

Find Examples:
(.)\1+         matches 'aaaa' and 'cc'.
(.+)\1+        also match 'abab' and '123123'
(['"]?)(\d+)\1 matches '"13" (in double quotes), or '4' (in single quotes) or 77 (without quotes) etc

Replace Examples:
Date format change from dd.mm.yyyy to yyyy-mm-dd. This will turn the European date style 26.8.1994 or 26/8/1994 into 1994-8-26.
Search: ([0-9]{1,2}).([0-9]{1,2}).([0-9]{4})
Replace: $3-$2-$1

TIP: Make sure you check the box for "Regular Expression". And I always check, "Prompt Each Replace" to avoid unintended replacements. Make sure your hit "List" or "Count" before you hit "Replace". You want to make sure you get all the strings you had in mind.

For explanation we used help text on regular expressions by Andrey V. Sorokin (http://anso.virtualave.net) Note: This site uses lots of popups!

Regular Expression Tutorials
The following is a list of a few sites that contain tutorials on both regular expressions in general and their use in specific loanguages:

http://www.regular-expressions.info/ (General Tutorial)
Regular Expression HOWTO (For Python)
Regular expressions in UNIX (Spring 1995)
Perl Regular Expression Tutorial


View Menu

 Menu - View

viewmenu

Toolbars
See Toolbars.

projectshow Tool Panel (Ctrl+F2)
Toggles the tool panel on and off.

spellicon Spell Check
Toggles the spell checker on and off. When first switched on it will cause PSPad to scan the entire file and mark mis-spelt words; this may take some time. When this option is active, the spell item on the Look Toolbar will be underlined in red.

Active Line
Toggles current line highlighting. When this option is activated a tick will appear in the menu next to the Active Line item. For details of setting the colour, see Settings / Program Settings / Colors.

syntaxe Syntax
Toggles syntx highlighting on and off. This option is disabled if the current file does not have an highlighter associated with it.

linenum Line Numbers
Toggles line numbering. The state of this option is reflected in the Look Toolbar. Whether or not the left-hand gutter disappears when this option is switched off is controlled by the Autohide Gutter option in Settings / Program Settings / Program.

wordwrap Word Wrap Lines
Toggles word wrap on and off. The state of this option is reflected in the Look Toolbar. The performance of this option and its availability are control by options in Settings / Program Settings / Editor.

specchars Special Characters
Toggles on and off the option to display 'special' characters as visibile ones. Special characters include spaces, tabes and carriage returns.

ruller Ruler
Toggles the ruler at the top of the file edit window on and off.

hexdump Hex Edit MODE
Switches between Hex and normal edit modes.

Show OEM chars
This switches between the DOS/IBM and Windows extended character set. This is used to display characters 128 through 255. The DOS/IBM extended character set (known as OEM) contains the line draw characters found in a number of text files. Note: that this only affects the display and not how the file is saved.

stayontop Stay on Top
Toggles PSPad's ability to be the topmost window on the desktop.

Hex Offset
Toggles between shown the offset in hexadecimal and in decimal. See the image below for an example of how this affects the display. This option is only available if the editor is in HEX mode. See Hex Editor for more information about using Hex Mode.

hexoffseteg

syntx Change Syntax
Changes the highlighter used for the active document. For a new file that is not yet saved it changes file type (extension). When called PSPad will produce a window like this:

changesyntax


 Toolbars

This menu allows you to control which toolbars are displayed.

toolbarmenu

Show/Hide panel (F2)
This toggles the toobar panel off and on. Use this, along with Tool Panel on the View Menu, to give you more editor screen space.

Project
Toggle the Project Toolbar on and off. See Project Toolbar for details of the functions controlled by this toolbar.

Main
Toggle the Main Toolbar on and off. See Main Toolbar for details of the functions controlled by this toolbar.

Edit
Toggle the Edit Toolbar on and off. See Edit Toolbar for details of the functions controlled by this toolbar.

Look
Toggle the Look Toolbar on and off. See Look Toolbar for details of the functions controlled by this toolbar.

Control
Toggle the Control Toolbar on and off. See Control Toolbar for details of the functions controlled by this toolbar.

HTML
Toggle the HTML Toolbar on and off. See HTML Toolbar for details of the functions controlled by this toolbar.

Macro
Toggle the Macro Toolbar on and off. See Macro Toolbar for details of the functions controlled by this toolbar.

Show All
This shows all 7 of the toolbars.

Hide All
This hides all 7 of the toolbars.


Project

 Project Toolbar

projecttoolbar

For more information on projects see Working With Projects and Project Menu.

projectmenuswitchtoolbar Show/Hide Tool Panel (Ctrl+F2)
This toggles the toobar panel off and on. Use this, along with Tool Panel on the View Menu, to give you more editor screen space.

projectmenunew New Project
Create a new project with an option to close an existing one. For further details see Project Menu.

projectmenuopen Open Project (Ctrl+Shift+P)
Open an existing project. Clicking on the arrow presents a menu with options to open a project or create a project from a folder. In addition, the menu will include a list of most recently accessed project files. For further details see Project Menu.

projectmenusave Save Project
Save the current project. For further details see Project Menu.

projectmenuswitchlog Show/Hide LOG panel
This toggles the LOG panel on and off.


Main

 Main Toolbar

maintoolbar

maintoolbarnew New
Create a new file. Clicking on the button will create a file of the same type as the active file is there is one. If there is no active file then a .TXT file will be created. If you click on the arrow you will be offered a list of active file types to select the new file from.

maintoolbaropen Open
Open an existing file. If you click on the arrow you will be presented with a menu similar to File / Open Special.

maintoolbarsave Save
Save the current file. This option is only available if there is an active file with unsaved changed. If you click on the arrow you will be presented with a menu containing the save, move and export options from the File menu.

maintoolbarsaveall SaveAll
Save all of the currently open files.

maintoolbarfind Find
Opens the Find dialog. See Search and Replace for more information.

maintoolbarreplace Replace
Opens the Replace dialog. See Search and Replace for more information.

maintoolbarfindinfiles Find In Files
Opens the Find In Files dialog. See Search and Replace in Files for more information.

maintoolbarbrackets Find Matching Bracket
Search for matching bracket. If the cursor is places immediately before or after any of the bracket characters and then this option is called the cursor will be moved to the point immediately before the matching bracket.

The bracket characters are (), [], {}, and <>.

maintoolbarbookmarks View Bookmark List
When selected, this option will produce a list of active bookmarks in the file; double-clicking on an item in the list will move the cursor to the relevant place in the file. This option is not available if there are no bookmarks defined in the active file.

maintoolbarpreview Print Preview
Generate a print preview of the active file.

maintoolbarprint Print
Print the active file

maintoolbarundo Undo
This option undoes the last action. The number of actions you can undo is limited by the setting in Settings / Program Settings / Editor / Max UNDO Operations.

maintoolbarredo Redo
This option reapplies any actions undone using the Undo option.


Edit

 Edit Toolbar

edittoolbar

copy Copy (Ctrl+C)
Copy selected text. For more details see Edit Menu.

cut Cut (Ctrl+X)
Cut selected text. For more details see Edit Menu.

paste Paste (Ctrl+V)
Paste the contents of the clipboard in to the file at the cursor position. For more details see Edit Menu.

delete Delete (DEL)
Delete selected text. For more details see Edit Menu.


Look

 Look Toolbar

looktoolbar

wordwrap Wordwrap (Ctrl+W)
Toggle word wrap on and off. See View Menu for more details.

specchars Show Special Characters
Toggle special character viewing on and off. See View Menu for more details.

syntaxe Show Syntax
Toggle syntax highlighing on and off. See View Menu for more details.

syntx Change Syntax
Change syntax / File Type. See View Menu for more details.

linenum Line Numbering
Toggle line numbering on and off. See View Menu for more details.

readonly Read Only
Mark the file read-only in PSPad. See File Tabs Context Menu for more details.

spellicon View Spelling Errors
Toggle spelling error indication on and off.See View Menu for more details.

stayontop Stay on Top
Togggle on and off PSPad's ability to remain as the top most window on the desk top. See View Menu for more details.


Control

 Control Toolbar

controltoolbar

externalprogram Run an External Program (F9, Shift+F9, Alt+Shift+F9)
Run the file in one of the defined External Applications'. See Highlighter Settings / External Applications for more information

compile Compile (Ctrl+F9)
Run the file through the compiler. See Highlighter Settings / Compiler Settings for more information.

commandline Command Line
Run a command. See Running a Command.


HTML

 HTML Toolbar

htmltoolbar

All of the functions on this toolbar, except where otherwise stated, are disabled when editing anything other than HTML or XML files.

htmltoolbarreformat Reformat HTML (Ctrl+T)
This option reformats the HTML file to make the code easier to read. The functionality of the HTML code itself is unchanged.

htmltoolbarcompress Compress HTML
This option conpresses the HTML file by removing unnecessary spaces and concatenates lines up to the maximum line length set in Program Settings / HTML / Tools ?maximum Compressed Line Length. The functionality of the HTML code itself is unchanged.

htmltoolbarcolors Open Colour Selector (Alt+C)
This option opens the colour selector dialog. See Tools Menu / Colour Selector for more details. This option is available for all file types.

htmltoolbarhtml2text HTML to Text
This option removes all HTML tags from the file and creates a new text file that it populates with the result. The original file is unchanged.

htmltoolbartage2uppercase HTML Tags to Uppercase
This option converts all of the tags in the document to uppercase. This option operates on the entire file, regardless of whether or not text is selected.

htmltoolbartag2lowercase HTML Tags to Lowercase
This option converts all of the tags in the document to lowercase. This option operates on the entire file, regardless of whether or not text is selected.

htmltoolbarinternalbrowser Open File in Internal Browser (F10)
This option displays the file in PSPad's own internal browser. This browser is useful for displaying simple pages but will not necessarily execute pages as if they were installed on a server.

htmltoolbartopstyle Open in TopStyle
Opens TopStyle and displays the selected text. This option is only useful for editing CSS Stylesheets.

htmltoolbargoogle Google Search
Perform an internet search using Google. See Search Menu / Google Search for more details. This option is available for all file types.


Macro

 Macros Toolbar

macrotoolbar

Macros are used to record a number of file navigation and editing functions so that they can be repeated later. More information on Macros can be found in Working with PSPad / Macros. A list of the supported actions for macros can be found at Working with PSPad / Macros / Macro Commands.

macrotoolbarrecord Record (Ctrl+F5)
This option toggles macro recording on and off. Note that when PSPad is recording a macro the button changes to macrostop and the cursor changes to macrocursor.

macrotoolbarplay Play (F5, F6, Alt+F6, Ctrl+Alt+F6)
This option opens a menu that allows you to select either one of the up to 4 macros configured to run with a hotkey. It also allows you to open the Macro Manager.


Format Menu

 Menu - Format

If file is in Read/Only mode, text changing function are disabled

font Font...
Changes font for regular editor or HEX editor (independently). You cannot set the general font style to Bold or Italic because that would clash with Syntax Highlighters, which use those features.

Char Case Change
lower To Upper Case CTRL+ALT+U
upper To Lower Case CTRL+ALT+L
capitalize Capitalize CTRL+ALT+T
Invert Case
Changes char case for selected block or whole document, if no selection is made.

Block Format
formatting increase indent Indent SHIFT+CTRL+I
formatting decrease indent UnIndent SHIFT+CTRL+U
Increase or decrease block indentation. Works only when block of lines is selected

Reformat (paragraph ...) CTRL+K
Enabled only when WordWrap is OFF!
Reformat text with right edge mark. After reformat, all redundant line breaks and redundant spaces are removed.
Selected block is reformatted. With no selection, the actual paragraph is reformatted. Paragraph separator is empty line.
Alternately, you can use Shift+Ctrl+K - paragraph separator is short line. ???

For example: if you want to reformat text to 40 chars width, click on ruler (position 40) to set right edge mark and pres Ctrl+K. Now each line is 40 chars or less.

Justify Center/Left CTRL+ALT+Left
Whole text or selected block will be justified to either center or left.

Justify Center/Right CTRL+ALT+Right
Whole text or selected block will be justified to either center or right.

Block Align
Right and Left justfied. Both sides square.

Code Case Change...
You can change char case for specific parts of source code - for selected highlighter attribute (keyword, comments, ...)

Add / Remove Comments SHIFT+CTRL+A
Add/remove comment char (string) to the begin of each line, individual for language. Works only for languages, support line comments

Autodetect CP (Czech only)
Specific to Czech and Slovak users. It won't work in elsewhere. Don't use !
ANSI
Windows native code page. No CP conversion.
OEM
DOS OEM charset.
Kamenicky
Specific to Czech and Slovak users.
ISO 8895-2
UNICODE
UTF-8
Code page conversion

File formats
DOS
UNIX
MAC
Defines line break chars. DOS - Cr+Lf, UNIX - Lf, MAC - Cr.

File formats
The first 32 entrys in the ASCII code table is used for
(non-printing) control character.
Number 10 (decimal) means a LF (Linefeed, go one line down)
Number 13 (decimal) means a CR (carriage return , go to Pos1)
The various operation systems use various line end chars.
Dependent on what OS you want to use that file, you have to use the right option:

DOS
The end-of-line delimiter for text files on DOS \ Windows systems
is a carriage return followed by a line feed. (Cr+Lf)

UNIX
The line feed character (Lf) is the standard end-of-line
delimiter for text files on Unix systems.

MAC
The end-of-line delimiter for text files on Mac OS systems
is a carriage return (Cr).

Note:
If you open such files in PSPad, PSPad use the right
file format for you (see Format menu and status line).
On other hand, if you open e.g. an UNIX file in Notepad,
you see a long line with little boxes. Not easy to read.
You can convert such files by open them in PSPad, select the
File format you want to convert, and save that file again.

Autodetect CP (Czech only)
Specific to Czech and Slovak users. It won't work in elsewhere. Don't use !

------------------
Note that you must have the right font and code page to display some characters correct.

ANSI
Windows native code page. No CP conversion. ISO 6937/2
(nearly like the from ISO extended 8 bit ASCII table 8859-1
whit chars for western europe, aka ISO-Latin-1)
Related to code page Win-1252
For normal Windows use for western europe.
Danish, Dutch, English, Faeroese, Finnish, French,
German, Icelandic, Irish, Italian, Norwegian, Portuguese,
Spanish and Swedish.

OEM
DOS OEM charset.
From IBM extended 8 bit ASCII table.
Related to code page DOS-850 Multilingual Latin 1 and DOS-437 US.
Use for files to be writen or read unter DOS in western europe.
OEM chars are used e.g. in some .NFO .DIZ file to display "pictures"
using OEM semigrafic chars. This feature enables you see correct Graphic.

Kamenicky
Specific to Czech and Slovak users.
From IBM extended 8 bit ASCII table.
Related to code page DOS-895
Use for files to be writen or read unter DOS in eastern europe.

ISO 8895-2
From ISO extended 8 bit ASCII table whit chars for eastern europe. aka ISO-Latin-2.
Related to code page WIN-1250 \ DOS-852.
For normal Windows use for eastern europe.
Albanian, Czech, English, German, Hungarian, Polish,
Rumanian, (Serbo-)Croatian, Slovak, Slovene and Swedish.

UNICODE
(This means UTF-16 (Unicode transformation format) or UCS-2)
New ISO standard 10646 who contain all the varios code pages above and much more.
UNICODE use 16 bit to encode the file, so the file is 2 times bigger than ANSI or ISO 8895-x
plus 2 Byte BOM (Byte Order Mark) "FF FE" (seen in ANSI as ÿþ ) for ident such UNICODE files.
UNICODE is use for special chars like them in Cyrillic, Arabic, Greek, Nordic, Far East.
Windows NT supports UNICODE, but you may have not the right fonts to see such spechial chars.

UTF-8
This is a flexible form from UNICODE.
UTF-8 encoded chars, that normal has to use 16 bit, in 8 bit code.
If there only ASCII standard chars in your file, this file got the
same size as ASCII + 3 Byte BOM for ident, "EF BB BF" (seen in ANSI as ï»¿ ).
If there are special characters, the will be converted
in an 8 bit format and the file increase for that.
(e.g. Ä is encodet in UTF-8 as &#196; using standard ASCII chars.)
UTF-8 is used for special chars but to be compatible with other 8 bit char sets.

pls delete this underscore by & #196, Its only because this side show a Ä again.


Tools Menu

 Menu - Tools

Spellcheck F7
Read dictionary (only first time) and begin with spell check from cursor position

Auto Completion CTRL+J
Very usable function. Write several chars and press Ctrl+J. If only one word is found to match, it is automatically finished. In other cases, it lists words from which you can select. Use Down & Enter to select.
Word list comes only from text previously written in the active document.

Macros
makrorecord Record Macro CTRL+F5
makrostop Stop Record ALT+F5
makroplay Play Macro F5
Macro Manager
Play
Play x-Times
You can choose macro and specify number of times it is played.
Delete
Edit macro
List of macro commands are here. You can use special highlighter and clips for macro editing.
Cancel
Assign Shortcut (to the macro)
F5, F6, ALT+F6, or CTRL+ALT+F6

Clip from Block SHIFT+CTRL+Space
Wizard for creation new clip. Select block and pres hotkey. Dialog is shown, you write clip name, description, hotkey (optional) and new clip is ready to use.

Text Differences
PSPad allows you compare contents of two text files and displays color highlighted differences in new window. For details see this chapter
Text Diff with This File
Text Diff with File Contents on Disk

Code Explorer SHIFT+CTRL+E
A window that helps to quickly orient you to your code. Try it with an HTML, XML or C file.

ASCII table ALT+A
ASCII chart allows you insert active char to active document. In table you will see char, decimal and hexadecimal value, html entities. You can print ASCII chart too.

paleta Color Dialog (Selector?) ALT+C
Opens color selection dialog for HTML color selection with possibility to insert selected color into text. You can choose from safe colors palette, 16 colors palette, gray palette, color name palette and standard color dialog.

Color Translator CTRL+ALT+C (now in menu Tools)
Converts color code or color name to color, and display it. Selected text before dialog calling if parsed in dialog.

Color Translator... CTRL+ALT+C
Translates any form of a color to the other forms: HTML Color Code, Color Name, Percent Notation, RGB Notation. Shows resulting color.

Clipboard Monitor ALT+M
If active, catch all clipboard manipulation and contents is displayed in special window. In this window you can pause monitor catching, work with clipboard history, delete it, ...

Numeric Base Calculator...
This tool helps you convert numbers between any numeric bases from binary to hexadecimal. And as bonus you can convert Roman numbers and convert milliseconds to datetime

User Converters...
with external files you can create user defined converters. Details about creating and file structure in separated chapter.

Calculate Block
Having selected a block of numbers, this function will give: Sum, Min, Max, Average, & Count of all the numbers.

Open System Files
This function opens Autoexec, Config, System.INI a Win.INI include syntax highlight.


 Colour Selector

colourselector
The colour selector is designed to include the correct HTML colour code or colour name in to your file for the colour you select. When you move your cursor over one of the small colour swatches that colour is reflected in the larger swatch at the bottom of the Colour Selector along with that colour's HTML code and, where appropriate, the colour's name. There are 5 palettes you can select from:

Safe Colours
This palette is limited to the 216, so called, 'Netscape' colours.

16-colour
This palette is limited to the 16 colours supported by older computers.

Grey Scale
This palette contains the 256 grey shades between black and white.

Named Colours
This palette is limited to the original 140 colours that have standard HTML names. A full list of the names can be found here.

Windows
This option opens the standard windows colour selection dialog. The swatch at the bottom of the Colour Selector does not change to reflect the colours your cursor moves over whilst using the Windows colour selection dialog.


 Spell Check

PSPad allows you spell check your document. Spell check is independent of installation MS Office and other packages. Dictionaries are ready for download from PSPad pages.

How it works ?
With first use, dictionary is loaded. It can take several seconds, so be patient. Then text is checked and unknown words are marked.
Unknown words you add to dictionary are added into user dictionary.
Spell check settings and dictionary selection is provided in menu tools / spell settings.

Spell check works in two modes:

Mark unknown words
After activation unknown words are underlined. It's used for quick orientation.

Spell check with word correction
Starting from cursor position, text is processed. Unknown words are displayed in a dialog. You may get a list of suggested spellings. You can choose from these actions:
· skip
· always skip
· add to dictionary
· change
· change and add to dictionary

Add diacritic (accent marks)
Text is processed and into words are added diacritical signs. Only for Czech & Slovak users.


 User Convertors

Convertor is used to automate char or string bidirectional conversion

Location of Convertor Files
In subdirectory .\Convert. Convertor definition files are simple text files with INI files structure. In this dir you find the file Template.IN_ - a convertor base template. Convertors can be called from menu Tools / User Convertors...

Convertor syntax
; semicolon is comment - optional, is ignored
;section names are bold  - mandatory
;red color - mandatory text.  Must be set.
[Description]
;convertor description - will be displayed in menu
ForwardName=UNICODE chars to HTML entity (WML)
BackwardName=HTML entity (WML) to UNICODE chars
;set of char case ignore. 1 = yes, 0 = no
ForwardIgnoreCase=0
BackWardIgnoreCase=0
;sets whether conversion will be processed with char table or replacing string by string
CharTable=0
;section for replacing string by string. Strings are delimited by | char (pipe or bar)
[Conversion]
Š|&#x0160;
Œ|&#x015A;
|&#x0164;
;list of char, which will be removed during conversion
[Remove chars]
10
12
;char conversion table. Numbers are char ASCII values. Write only chars you want to convert.
[Table]
134=64
135=12

Conversion char table or string replace ?
It depends of convertor meaning. If you want do code page conversion or replace tabs with spaces, use char table. It will be more precise and faster. Otherwise, use string replace.

How conversion char table works
Convertor works with selected block of text or whole document. This text (selected or whole doc) is processed char by char and chars are replaced by corresponding char from conversion table.

How string replace works
Convertor works with selected block of text or whole document. All strings defined in [Conversion] section are applied to the text. It's like a Search / Replace function. For long text, this can take some time.

String conversion possible problems
Stupid definition:

[Conversion]
B|A
A|B

In this case, first all "B" chars replaced with "A" and in next all "A" are replaced with "B" - The result is nothing changes.

[Conversion]
hallo|hi
halloween|party

It will works badly again. First, all occurrences of hallo are replaced with hi. After first replace, the word halloween will be word hiween and second step replaces nothing. There are no more halloween words left.
All you need to correct it is to change the position in conversion definition to:

[Conversion]
halloween|party
hallo|hi


 Text Differences

How it works:

Open any file - File1
Two ways to get second file for a Text Diff

1. From menu Tools / Text Differences, select Text Diff with This File. A File Open dialog box will come up. Select file - File2
2. Context menu: Right click over the file TAB of another open file. Select Text Diff with This File. This file will become File2

After comparing, a new Text Diff window is opened with compare results. This window is spit into two parts with locked scrolling. File1 is on the left, File2 is on the right.
In both files are lines corresponding to common parts of text. Extra lines are added to both as needed to reflect the differences. This results are read only.

You can find three kinds of differences:

textdiff

· lines with different content
· lines missing in File2
· lines missing in File1

Moving in results

· previous difference Shift+Ctrl+Up
· next difference Shift+Ctrl+Down


 Running a Command

When you use the Tools / Command Line option, the following dislog box is shown:

commandlinedialog

The text box allows you enter a command line to Run. There is a dropdown option to recall previous command lines and a button that allows you to find a file whose path will be used as the command line.

Run under MS-DOS command interpreter
Normally, your command is run silently in the background and so you cannot provide input to or receive output form the program that runs (that said, if the command is a call to a windows program that will open and run as you would normally expect). If you check this option, the command will run in a Command Line box so that you can interacte with the command to be run.

Capture Program Output Window
All of the output generated in the running of the command will be captured and displayed in the LOG screen if this option is set. This option is only available if 'Run under MS-DOS...', above, is selected.

Hide Output Window
When checked this option will


HTML Menu

 Menu - HTML

HTML Page Preview F10
Show / Hide preview of HTML page in internal browser. If preview window stays open in background, it will be refreshed at intervals specified in program settings / editor / Auto Refresh [s].
You can use Mozilla in internal browser too. all whar tou need is download (for free) and install Mozilla ActiveX control. Then you can switch in internal browser between IE and Mozilla with first button.

HTML Preview from HTDocs (web server) Shift+Ctrl+F10
Can be used to preview your page through your web server. Path to server directory is specified in program settings / internet. Part of file path is replaced by http://server/
Default settings for Apache server is C:\Apache\HTDocs. If you call normal HTML preview (F10), the file is displayed in the internal browser.
file://localhost/c:/apache/htdocs/soubor.htm. If you use webserver preview, file is displayed in the internal browser http://localhost/soubor.htm.

htmlreformat Reformat HTML code
Reformats HTML code for pretty print. Scripts, comments and special tags (pre, ...) are not changed.
htmlcompres Compress HTML code
From HTML code redundant spaces, line breaks, ... are removed. Line breaks are inserted approximately after 200 chars.
Result is smallest and worse code for reading. Makes it hard to steal your HTML.
tagupper Tags to upper case
taglower Tags to lower case
Change char case of HTML tags (Lower case tags are standard in XHTML)

Reformat Structured CSS code
Reformats Cascaded Style Sheets to pretty print form

Reformat Inline CSS code
Reformats Cascaded Style Sheets to pretty print form

Top Style
TopStyle (free version TopStyleLite) is a great CSS editor, integrated in many of known HTML editors, and now in PSPad too. To work with TopStyle, you must download and install free version. What you select is transferred to TopStyle for editing. After you press Done button, it is tansferred back to the editor.

Conversion
html2txt Remove Tags
This tool remove tags and shows text content in new file.
Text to HTML
Cover text with HTML tags to make it capable display in HTML browsers
Selection to JavaScript
Selected text is changed to JavaScript function Document.Write()

Import from RTF
Simple RTF document is converted into HTML code. I suggest run function TiDy clean document after, to reformat and upgrade to CSS

Import from CSV
Import from Comma Separated Value file, as can be exported from spreadsheets and databases.

Check HTML Code CTRL+F10
Only check HTML code (without changes). Errors and warning are displayed in LOG window at bottom.

TiDy functions
These functions come from TidyCFG.INI file. Every section in this file is one item in the menu. You can modify it, add to or remove sections, ..
More about syntax in TiDy chapter.


 HTML TiDy

What is TiDy ?
TiDy is library for checking, formatting, cleaning HTML code. This library is found in all the better editors that work with HTML code. TiDy is fully integrated into PSPad. All you need is file TiDyCom.DLL in the same directory as PSPad.EXE. With the configuration file TiDyCFG.INI, you can modify the menu for TiDy in PSPad. Each section in this file is one item in PSPad Menu (dynamically created).

You need to restart PSPad after you add or delete section in TiDy config file. TiDy syntax you can find at TiDy quick reference pages

Check HTML Code (Ctrl+F10)
Checks and analyzes HTML code and displays errors in LOG window

TiDy clean document
Cleans and corrects HTML code, include removing parts from MS tools

TiDy upgrade to CSS
Upgrades HTML to CSS

TiDy convert to XML
Converts HTML document to XML

TiDy convert to XHTML
Converts HTML document to XHTML


Settings Menu

 Menu - Settings

settings Program Settings... F4
Opens dialog where you can customize PSPad editor.

Highlighter Settings...
In this dialog you can customize colors for individual environment, assign external files, compilers, ...

User Highlighter... F11
Shows dialog where you can easy define your own highlighter.

Edit Clips Definition File
Shows list of possible clips. After you choose, clip file is opened for editing

Clips Hotkeys (User Shortcuts)
To each clip you can assign shortcut for quick access. Here is list of existing shortcuts for the active clip definition file. Only enabled if any shortcuts exist.

User Variables
List of static variables for use in clips. You can use predefined or add / edit / delete new variables

Spell Settings... CTRL+F7
Options for spell check and auto correction.

Dictionary: Select your spoken language
Show As: How to display the underline of mispelled words: MS Word or WordPerfect.

[ ] Ignore One-char Words
[ ] Ignore Words with Numbers

Auto Correct
Expression: Replace With:

Note: To edit an entry, you must select it, modify it in the lower textboxes and then, press Edit to save your changes.

Try Auto Correct yourself:

· Enter your initials, and your full name.
· Enter teh, and the
· Enter fo, and for (i=  ; i >=  ; i++) {   }

Then type your initials, teh and fo, each followed by a space. The correction or substitution is automatic.


Language

 Program Settings - Language

Sets language for PSPad user interface. it is not necessary to restart PSPad if this setting is changed, however, the selected language file must exist in .\Lang subdirectory


Program - look

 Program Settings - Program look

File Tabs Panel on Top
File panel position top / bottom

Hide file panel
This checkbox has three states:
[ ] - always visible
[] - visible with 2 and more opened files
[x] - always hidden

New menu style
When checked new modern menu style (like MS Office) is used. I suggest swith this feature off on slowest computers

Button style file panel
File panel look. The checkbox has 3 states:
[ ] - tabs
[] - flat buttons
[x] - buttons

Multiline File Tabs Panel
When checked the file tabs may occupy several rows in the File Panel.

Don't Show file .EXT Buttons
When checked the file names will be shown without file name extensions on file panel.

Auto-hide Left Gutter
When set the left margin gutter will be hidden when line numbering is switched off.

Show Icons in Menus
When checked the relevant icons will appear next to options in various menus throughout the system. When uncheck only the text of the menu items will be shown.

Whole Project File Name
When set the file path will be displayed as the tool tip for the project in the project tree. Otherwise, only the project name is used.

Auto Sort Files in Project
When checked, if a new file added into then Project the files in Project tree will be sorted.

Interactive Clips Vars Sorted
By default all fields in interactive clips are unsorted and displayed in the order written. In special cases, you need show fields in interactive clips in an order other than written in the clip. So you can use this option and give variables fitting names: %1edit%, %2edit%, ... This causes them to sort as you desire.

Note: [] is gray check in Win9x.


Program - behaviour

 Program Settings - Program behaviour

Auto Open New File after Start
This determines the default action when the program starts. The checkbox has 3 states:
[ ] - Dialog with files type or templates is displayed
[] - Program started without any file
[x] - New empty file is created

ESC to Exit Program
When checked, pressing the ESC key will cause the program to Close. Note: If there is no active file then Esc will always close the program.

Show Splash Screen
When checked, the splash screen shows during program start.

Ident.bytes in UTF-8 coding
Files with UNICODE or UTF-8 coding has special leading bytes for format identification. For some programs are these bytes are redundant (PHP, Java). You can turn off writing of leading bytes.

R/O mode changes file attribute
When checked, switching R/O mode in PSPad has changes the file read-only attribute. Ordinarily, when PSPad opens a file in R/O mode, it is only Read Only in the editor, and the file attribute is left unchanged.

Czech ANSI <-> OEM Conversion
Provided internal code page conversion instead of system functions. Only has meaning for Czech countries.

Cursor at End of LOG
Cursor placement after LOG is displayed

Smart file switching
Changes switching file order of Ctrl+Tab a Shift+Ctrl+Tab. If activated, order is changed to order you selected file tabs with mouse. If unchecked, Ctrl+Tab will scroll through one file after the other..

Split Horizontal for Synchronize
When checked the synchronized moving is done with vertically tiled windows (ie there is a horizontal split). Note: When windows are synchronized, you see a chain link icon in the status bar. Click on it to 'Unsychronize' the windows or simply give the Synchronize command again to toggle it off.

Color Syntax Print
When checked, printed output is syntax highlighted as it is on the screen.

Note: [] is gray check in Win9x.


Editor - behaviour

 Program Settings - Editor behaviour

Scroll Past End-of-line
Allow you place cursor after end of line. Any characters you type after you place your cursor after end of line will be preceded with space characters.

Trim Trailing Spaces
When selected trailing spaces will be automatically trimmed from end of line. You cannot use it with Word Wrap feature. If activated, Word Wrap is disabled. The checkbox has 3 states.
[ ] - No trimming
[] - Online trimming
[x] - Trimmed during file save operation

Alt Sets Column Mode
When checked, if you select text whilst holding down the ALT key then the system will use the column selection method otherwise the normal selection method is used.

Right-click Doesn't Move Cursor
After a right mouse button click the cursor is usually set to the place you clicked .You can disable this by checking this option.

Middle mouse - clip list
When checked, after a middle mouse button click Clip list is displayed (if available)

Auto Indent Mode
When checked, this option will cause the cursor to start the new line with a left indent equivalent to that of the previous line. Otherwise each line will start at the left margin.

Extended HOME key
When checked the HOME moves the cursor to a point immediately before the first character on the line. Pressing HOME a second time mores the cursor to the left margin. Otherwise, HOME moves the cursor to the left margin.

Extended Cut and Copy
When checked, if no text selected the Cut and Copy functions will work with whole line

Wrap (soft) with Right Edge
When Word Wrap is on and this option is checked text will be wrapped at right edge mark, not window width. You may change the Right Edge at any time by clicking on the Ruler to dynamically resize the wrap. This is a soft wrap and does not change line length. When not checked, Word Wrap wraps text to the window and changes as you resize the window.

Highlight Matching Bracket
When checked matching brackets are automatically highlighted if cursor is next to bracket. Color of highlight can be set in: Program Settings / Colors / Brackets

Whole Words for Find Word at Cursor
This option sets the mode for searching next / previous occurrence of current word (Shift+Ctrl+Up/Down).

When checked this option will search for the previous/next occurrence of the highlighted text as a whole word.

When unchecked the option will also find the highlighted text as substrings.

When no text is selected, then whatever word the cursor is touching is highlighted as a whole word, regardless of this setting.

Completion of chars ... ( { [ < " '
After writing opening charater the program will automatically write closing, matching character. Note: This does not work during macro recording!

Brackets are completed when the character immediately after the opening bracket isn't word. Quotes are not completed if there is an alphanumeric chararacter immediately before or after the quote.

Examples when autocomplete is not done. Blue is user typed character:
(hallo
"world
"father"

If the leading '(' is written after the word hallo is written, then no match is written because it touches a letter.

Note: [] is gray check in Win9x.


Editor - settings

 Program Settings - Editor settings

Real Tabs
Switches between tabs [char(09h)] or required number of spaces [char(20h) when Tab is pressed. Tab Width will determine how much space appears in the editor for each Tab, regardless of this setting.

Smart Tabs
When checked, each TAB press will cause the cursor to follow words from previous line. When the cursor moves past the end of the previous line then TAB adds the normal amount of space, determined by the Tab Width setting.

Tab Width
Set default tab width. Type-specific Tab Widths can be set in highlighter settings.

Auto refresh [s]
Refreshing interval for HTML browser as well as files marked as Auto Refreshed (see Window Menu)

Max Line Length
You can set maximum line length. Default value is 1024 chars. Note: This is rarely used and may be eliminated in future version.

Position of Right Edge [chars]
Position of right edge marker. You can simply change the position of the marker by clicking on the ruler. This will dynamically rewrap the screen if Word Wrap is turned on. This setting only applies if 'Wrap (soft) with Right Edge' is checked and 'Word Wrap' is turned on.

Max UNDO operations
Maximum number of UNDO steps. In some special cases, the default value 1024 my not be sufficient (find/replace in long files...)

Mouse wheel scrool lines
Number of lines to scroll for mouse wheel

Search Result
Specifies cursor position after operations like find, goto line, etc. If set to default, position will not be changed.

Insert mode cursor
This sets the cursor type when the editor is in 'insert' mode. Set from one of Vertical Line, Block, Half-block and Horizontal Line.

Overwrite mode cursor
This sets the cursor type when the editor is in 'overwrite' mode. Set from one of Vertical Line, Block, Half-block and Horizontal Line.

Note: [] is gray check in Win9x.


Files and dirs

 Program Settings - Files and Dirs

Save Recent File List
Switches on / off recent files saving. If unchecked, recent files history is not remembered after the program exits.

Save Work / Desktop
Sets the behaviour concerning files open when the program exits. This option has 3 states:
[ ] - opened files are not restored next time
[] - restore all actually open files, including those opened by double-clicking in Windows Explorer, etc.
[x] - restore only files opened in PSPad. This value ignores the recent history of those files opened from outside of PSPad.

The benefit of the last option is that when you open files in PSPad, using it as a Notepad replacement, then you don't lose your "desktop" of files opened when you were working with a project or group of files.

Remember File State
The state of all open files is in the file PSCache.BIN will be stored state of all opened files. if you open this file next time, you will found it in state you close it - cursor position, bookmarks, highlighters, read only state...

Store only local files
In Recent file list and Save Work will be stored files from local drive only.

Remember Last Filter
When checked causes the system to remember the file type filter last used when opening a file.

New Default
You can set default file type for new document if no file is open. Note: If there is an active document then the type of then new document will be the same as the active document.

Always this type
New file will be always of selected type

Default CP for file opening
Set to "menu format settings" or "Windows CP1250". Note: Has no meaning for non-Czech or Slovak users.

Remember Last Directory
When checked causes the system remember the last used directory in Open dialog. Project settings has priority over this setting!

Same As Active Document
Sets the Open Dialog to the directory of the active document.

Designate Directory:
Specifies default directory when using Open dialog. Project settings has priority!

Clear History
This button will clear the MRU file list.

Note: [] means the gray check in Win9x.


Backup

 Program Settings - Backup

Backup Copy of Files
If checked the program will create file backups adding tilde char into extension. If file has name MyFile.TXT, backup file will be MyFile.~TXT. Backup system works differently if backup directory option is used, see below.

Folder for File Backup:
If filled, file name is not changed, but file is copied into specific directory including original directory structure.

Example:
original file: C:\Projects\Delphi\PSPad\PSPad.DPR
backup directory: D:\Backups
backup as: D:\Backups\Projects\Delphi\PSPad\PSPad.DPR

Autosave [min]
When set (ie value is not zero) then PSPad will automatically save changed files.


Colours

 Program Settings - Color

Font Color / Background
Changing these colours influence all highlighters by setting them all with the same color of font or background. So, be careful and test it out.

Selected Back / Selected Font
Background and font colours of selected text.

Current Line
Background colour of current line.

Right Edge
Colour of right edge marker. If you want to hide it, set the same color as background.

Gutter
Background colour for left gutter.

Spell Check
Color for underline mark when Spell Checker is enabled.

LOG parser
If you fill Log parser string in compiler settings then after clicking in LOG window, this will be background colour for corresponding line in the editor.

Brackets
Color for matching bracket highlighting.


System integration

 Program Settings - System

System Integration
Open TXT files
When checked this sets the association for .TXT files to PSPad. otherwise .TXT files are associated with notepad. Note: If Windows notepad.exe is replaced with the version of notepad.exe supplied with PSPad then this option is, effectively, ignored.

Integrate with Right Mouse Click
When Checked you can open any file in PSPad or PSPad HEX editor by clicking right mouse button on it and selecting corresponding item in context menu.

HTML Viewer in IE 5+ / HTML Editor in IE
When checked, sets PSPad as default HTML viewer or editor for MS Internet Explorer

HTML viewer in OPERA
In web browser you are able show HTML page source code in context menu. If checked, this source will open in PSPad. Conditions: MS Internet Explorer 5 and higher, Opera browser 5.1 and higher.
Note: If OPERA browser is running, this option is disabled!

Editor for Total (Windows) Commander
Sets PSPad as default editor for Total Commander.
Note: TotalCommander is running, this option is disabled!
Note: You must have TotalCommander shareware installed for this option to function.

Link on Desktop / Link in START menu / Link in SendTo menu
Adds or removes link for PSPad editor in Windows Explorer context menus

Multi User Environment
PSPad is able to work in multiuser environment such as Windows NT, Win2k, WinXP,etc. In this environment normal users may not be able to write or create files in "Program Files" directory. If this option checked, config and other user dependant files are stored in user profile directory.

Minimize to Tray Icon
Program is minimized to tray on exit. Start from tray is near immediate. You can control it over icon in tray. This behavior will change in next version.

Only One Program Instance
Allows you open either one or several instances of PSPad. When enabled, any new files sent to PSPad will be opened in the currently running instance, in a new file tab.


Registered file types

 Program Settings - Registered file types

You can register PSPad for direct opening (double click) chosen file types. For example, Adding .pl will load perl scripts into PSPad when you double click on them (be careful about doing this, as you might want to have these files run in PERL by default). Adding the association will also give perl scripts the PSPad file icon. When you delete a registered file type from the list, it is returned to whatever it was associated with before it leaves the file icon as a PSPad file.


Multihighlighter

 Program Settings - Multihighlighter

PSPad is able to highlight scripts (VBScript, JavaScript, PHP, TCL/Tk) and some other types (CSS, XML for example) inside HTML code. This is done using a special highlighter called the HTML Multi-Highlighter. Uses the settings on this page to determine how it works.

HTML MultiHighlighter
Enable Multi-Highlighter
When checked this option enables the multi-highlighter. This means that the

For <%...%> use
This option allows you to set the language type (and hence the highlighting) that is used between the <% %> usually associated with inline code on ASP pages.

MultiHighlighter Base
This allows you to choose either HTML or XHTML as the basis for the multihighlighter.

Open in Multi-Highlighter
Each file type checked here will open in the HTML Mulit Highlighter rather than it's own. Choose from PHP, JavaScript, VBScript, TCL/TK, XML or CSS.

Multi-Highlighter Section
Section Colour same as Highlighter
When checked, section tags (<style>, <script>, etc) are the same colour as the highlighter that is used to set there contents, otherwise the font and background colours are as set below.

Font Colour / Background
These will be used for highlighting begin and end part of sections in Multi-Highlighter (scripts, CSS, ...)


HTML tools

 Program Settings - HTML

Tools
Compressed Line Length
This sets the maximum line length for when the option HTML / Compress HTML Code is used.

Always real Tabs in CCS reformat
When checked this option will cause the system to indent CSS definitions with real tabs regardless of the setting of the 'Real Tabs' option in Settings / Program Settings / Editor.

Text to HTML - Lines as paragraphs
When checked this option will braked each line of text with <p></p> tags when the HTML / Conversion / Text to HTML option is used. Otherwise the end of each line has a <br> tag appended to it.


Text difference

 Program Settings - Text difference

Text Diff File Compare
Ignore Char Case
Character case will be ignored during compare

Ignore Highlighter Colors
Font styles (bold & italics) will be kept in Text difference result window, but syntax highlighting is suppressed.

Ignore Blank Space
Lines with different number of spaces or tabs only wouldn't be marked as changed

Added / Deleted / Modified.
Here you may change background colour of text difference results for the various modifications.


Internet

 Program Settings - Internet

Proxy server
Use proxy server
When checked forces the use of a proxy server when viewing HTML pages. The options below can only be accessed when this option is checked.

Get proxy server settings from MS Internet Explorer
When checked this option will cause the proxy server settings to be taken from your MS Internet Explorer settings. This option is not available if 'Use proxy server' is not set.

Address
Proxy server IP address .

Port
Proxy server port address. For MS proxy usually 8080, Winroute, WinProxy use 3128, another common value is 80.

User name / Password
Values required to access to proxy server if necessary.

e-Mail
Choose email client you will use in PSPad editor. Independent of default client in system.


Web server

 Program Settings - Web server

Settings required when you want preview web pages in your local Web Server (e.g. Apache)

Server
Name of computer with web server. If web server is on your computer, use localhost

Document Root
Default directory of local web server documents (value c:\apache\htdocs is default for freeware Apache web server).


HEX editor

 Program Settings - HEX editor

Hexadecimal offsett / decimal offset
You can select if you want address lines in HEX editor by hexadecimal or decimal numbers

Numbers of columns
Numbers of columns displayed in HEX editor

Bytes per columns
Number of bytes displayed in one column

Note: you can set this values direct in HEX editor with MouseWheel or Ctrl+MouseWheel


Key mapping

 Program Key Mapping

PSPad allows you to redefine shortcuts. Key mappings are stored in text file KeyMap.INI, placed in same directory as PSPad.exe or user profile directory, if Multiuser environment is activated. You can edit this file manually too.

How do I used it:
· Double click (or Right Arrow) on the file menu or category you want to change;
· Double click (or press Enter) the line in tree with action name you want to set the shortcuts for;
· Press new hotkey in dialog window. Press Esc or Cancel to discard the change you just made or press OK to assign the new shortcut;

Settings are only written after you press main OK button in settings dialog! To discard all changes made to all keys, press Cancel in Settings dialog or press 'Undo Changes'.

If shortcut is assigned to another action, when you press OK, you get a confirmation box asking if you want to overwrite the old setting. Select 'No' cancel the change. After confirmation, the old assignment is deleted and the key stoke is assigned to the new action.

Clear All
Clears all shortcuts

Undo changes
All changes are returned back to the program's last actual state

Default
Deletes file Keymap.INI, so after a restart, default key mapping is restored

Save to file
Saves actual key mapping into file his name you choose

Load from file
Load key maping from file you select


Syntax highlight

 Highlighter Settings

PSPad uses user highlighter settings. In menu Tools / Highlighter Settings, you have several tabs where you can set colors and font attributes, file filters, external applications and compiler, even a LOG code parser.

Complex color palette
You can read and save complex PSPad color palettes and simply change the look of whole program.
· reading - choose some palette from combo box and press Load button
· saving - write palette name and press Save button

HTML Multi-Highlighter

This highlighter is used for complex highlighting of another code inside HTML code, such as PHP or JavaScript.
Base highlighting comes from HTML highlighter.

Parts of code detection
· <script> </script> JavaScript
· <script...javascript...> </script> JavaScript
· <% %> VisualBasic script
· <script...vbscript...> </script> VisualBasic Script
· <script...tcl...> </script> TCL/TK
· <? ?> PHP
· <script...php...> </script> PHP
· <style...> </style> CSS


 Color Settings

Simply way to change whole PSPad colors scheme

1. basic color settings
Set basic colors in menu Settings / Program settings / Colors. These colors are applied to all highlighters with these rules:
· if previous font color is same as color of highlighter attributes, attribute color is changed to new color
· if previous background color is same as highlighter attribute colors, attributes background is changed to new color
· if highlighter attribute font color is same as new background color, attribute font color is changed to new font color

2. fine-tune highlighter colors
in menu Settings / Highlighter Settings / Colors you can tune highlighter attributes color and font styles

To change color and style of attribute in all highlighters, click on attribute name (e.g. comment attribute) and set it as you want.

3. save new PSPad color scheme
In menu Settings / Highlighter settings / Colors write name of new color scheme and press Save button.


Filters

 Highlighter - Filters

Filter name
Name is displayed in filter list in open and save dialog

Help file (help for environment)
If you fill it in, you can use Alt+F1 to call help for actual word (e.g. if you edit HTML code and cursor is on the "body" word, after Alt+F1 help for HTML syntax is opened and you will see context for "body" keyword). In Multi-Highlighter, the called help depends on the part of code you are in. In PHP part, help for PHP is called.

File masks
With this setting, you choose which highlighter will be active when you open this file type. In Filter Name of HTML Document, you find File Masks of *.htm and *.html. That means any files you open in PSPad with those extensions will use this highlighter.

User Highlighters
You can define your own highlighters. If you use one of the bolded highlighters (bold in highlighter list), list of user definition is enabled. Now you can clicking on items in list assign highlighter definition to one of three user highlighter position.
In this case are filter name and file masks taken from user highlighter definition. See user highlighter definition.

Tab width
You can set individual tab width for each environment. If value is set to 0, tab width is set from program settings / editor.

Extended indent chars
Some program languages (PHP, C,...) uses indentation for code writing:
xxx {
  xxx {
    xxx
    xxx
  }
}
You can define chars for extended indentation.

Conditions:
· char must be last char on line
· in program settings must be checked "autoindent" options


 External Applications

For each highlighter (ie, for each file type or 'environment') you can set up to 5 external applications. Shortcut keys are automatically defined for the first 3. These are F9, Alt-F9 and Shift-F9 respectively.

Application List
This is the list of defined External applications for this file type. You can change the order in which they appear using the buttons on the right hand side of the list. To delete or modify an entry in the list highlight it and use the relevant button under list. To add an entry to the list you must supply a name and a path to an application before you can press the 'Add' button.

Name:
This value will be displayed when you select 'File|Open with Program ...' or press the External Applications button on the tool bar.

Application:
Program name including path and parameters. The command line can include a number of variables. See the entry on Compiler and External Program Variables for more information.

LOG file:
If a path to a LOG is specified the external program is executed and any output is captured and sent to the LOG file. Once execution of the program is complete the LOG file is displayed. This means that if a LOG file is specified PSPad will be unavailable for use until the External Program execution is complete. If no LOG file is specified control returns to PSPad immediately. You can use variables in the LOG file entry.


 Compiler Settings

In some cases you need not only open document in external application, but run in external application, wait for application exit and than show some result (LOG). For this purpose is in PSPad compiler.
Compiler settings you find in menu Tools / Highlighter settings / Compiler tab settings.
You can run it from toolbar projcompile or use shortcut Ctrl+F9

What is given as param to compiler
Sorted as priority:
· main project file
· main file, if project doesn't exists
· active document

Compiler
Full path and program name to compiler without double quotes

Params
You can set compiler params, file name, ...
List of param variables is on bottom of this form. You can use context menu to insert param

LOG file
In this file is usually compilation results. PSPad shows you this file in LOG window on the bottom part of editor.
spodní èásti obrazovky. Pokud je toto políèko vyplnìno, soubor bude po kompilaci automaticky zobrazen.

Run After Compilation
You can run compiler result (result code, or something else) after compilation.

Save All Files Before Compilation
If checked, all modified files will be saved before compilation

Catch Program Output Window

LOG parser:
If you set it, you are able by clicking in LOG window, open (or switch into) source file and set position to line (column) if included in LOG content.

Variables and masks:
*  any text
%F filename
%L line number
%C column number

Example:
LOG:
[Error] uHLSett.pas(346): Undeclared identifier: 'ik'
[Fatal Error] PSPad.dpr(58): Could not compile used unit 'uHLSett.pas'
parser:
*] %F(%L)

Example explanation:
Because line begin in LOG isn't explicit, you need find common parts: ]space and on the begin put *.
Behind is filename %F than ( and line number, so we put %L. Closing bracked isn't necessary,but look nice :-)

Compiler settings examples
see compiler examples chapter.


 Compiler Examples

For compiler setting details see stand-alone chapter.

Green text replace by real values

LaTeX

compiler:        drive:\path\cslatex.bat
parameters:        %Name%.tex
LOG file:          %Name%.log
after compilation: windvi %Name%.dvi

Content CSLatex.BAT (distribution of TeXLive is supposed):
@echo off
kpsewhich cslatex.fmt > nul
if errorlevel 1 goto genformat
if errorlevel 0 goto okay
:genformat
fmtutil --byfmt cslatex
:okay
latex -translate-file=cp1250cs %1 %2 %3 %4 %5 %6 %7 %8 %9

LaTeX to PDF

compiler:        drive:\path\pdfcslatex.bat
parameters:        %Name%.tex
LOG file:          %Name%.log
after compilation: path_to_Acrobat_Reader\AcroRd32 %Name%.pdf

Content PDFLatex.BAT (distribution of TeXLive is supposed):
@echo off
kpsewhich pdfcslatex.fmt > nul
if errorlevel 1 goto genformat
if errorlevel 0 goto okay
:genformat
fmtutil --byfmt pdfcslatex
:okay
pdftex -translate-file=cp1250cs %1 %2 %3 %4 %5 %6 %7 %8 %9

MS-SQL

compiler:  drive:\path\osql
parameters : -Sserver_name -Ulogin_name -Ppassword -ddatabase_name -n -w1000 -i"%File%" -o"%Dir%%Name%.log"
LOG file:    %Dir%%Name%.log

ORACLE

compiler: drive:\path\PLUS80.EXE
parameters: -s jmeno/heslo@db @drive:\path\RunSQL "%Dir%%Name%.Log" "%File%"
LOG file:   %Dir%%Name%.Log

Content of auxiliary file RunSQL.SQL:
spool &1
set term off
@&2
spool off
exit

Note:
Don't forget to finish command by ";" char !

Assembler x86 with TurboAssembler

compiler:        drive:\path\tasm.bat
parameters:        drive:\path\tasm\ %Dir% %Name%
after compilation: %Dir%%Name%

content Tasm.BAT
@ECHO OFF
REM %1 = filepath
REM %2 = FileName without extension
REM Better do add path to directory with tasm.exe and tlink.exe to system %PATH% variable
CD %1
IF EXIST %2.exe DEL %2.exe
tasm %2.asm
tlink %2.obj
DEL %2.obj
DEL %2.map

Assembler 8051

compiler: drive:\path\cass51.bat
parameters: drive:\path1\asm51 %Dir% %Name% %Ext%

content cass51.bat
@Echo Off
cd %1
copy %2%3%4 %1%3%4
cass51 %3%4
del %3%4
copy %3.* %2%3.*
del %3.*

Kix32 - external command

run  : drive:\path\Kix32.exe "%File%"
debug: drive:\path\Kix32.exe "%File%" /d

Turbo pascal

compiler:          drive:\path\tpc.bat
parameters:        %Dir% %Name%
after compilation: %Dir%%Name%

content tpc.bat
@ECHO OFF
CD %1
IF EXIST %2.exe DEL %2.exe
tpc %2 -uD:\Programy\PASCAL\tpu -m

TiDy - HTML check

LOG parser: line %L

XMLlint - XML document check

You need Windows binaries of LibXML package (GPL licence) from LibXML page.
Download package include utilities, you need utility XMLlint.EXE

compiler:   drive:\path\xmllint.exe
parameters: --valid %File%
[X] catch compiler output
LOG parser: *:F:%L

Java SDK

compiler:          drive:\path\javac.exe
parameters:        %Name%.java
LOG file  :        %Name%.LOG
after compilation: cmd /k Java %Name%
[X] catch compiler output
LOG parser:        *:%L

PHP

compiler:          drive:\path\php.exe
parameters:        %File%
[X] catch compiler output
LOG parser:        *on line <b>%L

Perl

compiler:          drive:\path\perl.exe
parameters:        %File%
[X] catch compiler output
LOG parser:        *on line <b>%L

VisualBasic Script (external application example)

Name: Run current VBS file
Application:  "drive:\path\system32\wscript.exe"  "%File%"
LOG file:     "drive:\path\%Name%.log"

MS-Dos Batch language (external application example)

Name:         Run current batch file
Application:  "drive:\path\system32\cmd.exe" /K "%File%"
LOG file:     "drive:\path\%Name%.log"

Borland C++ Builder (command line)

Compiler:    drive:\path\bcc32.exe
Parameters:  %Name%%Ext%
Log file:    %Name%.LOG
Run after complication: %Name%.exe
[X] catch compiler output
Log Parser:  * * %F %L:


 External Command and Compiler Variables

When configuring External Commands or Compilers it is possible to use a number of variables in the application settings path and the LOG file path. These are described below. Note: These variable names are all case-sensitive so, for example %File% will work, but %file% and %FILE% will fail to produce the expected results.

%File%
This variable will be replaced with the full path name, including drive specifier, of the current file.

Example:
C:\MyProg.exe "%File%"

Becomes:
C:\MyProg.exe "C:\Documents and Settings\stuart\This File.txt"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%Dir%
This variable will be replaced with the full path, including drive specifier, of the directory in which the current file is saved.

Example:
C:\MyProg.exe -o "%Dir%" ...

Becomes:
C:\MyProg.exe -o "C:\Documents and Settings\stuart\"

Note: The quotation marks around the variable name are required if the path name includes spaces. Also note that the %Dir% variable includes the final "\".

%Name%
This variable will be replaced with the name, without the extension, of the current file.

Example:
C:\MyProg.exe "%Name%"

Becomes:
C:\MyProg.exe "This File"

Note: The quotation marks around the variable name are required if the file name includes spaces.

%Ext%
This variable will be replaced with the extension of the current file name.

Example:
C:\MyProg.exe -e%Ext%

Becomes:
C:\MyProg.exe -e .txt

Note: The extension includes the preceding ".".

%URLFile%
This variable will be replaced with the full path name, including drive specifier, of the current file preceded by 'file://localhost/'

Example:
C:\MyProg.exe "%URLFile%"

Becomes:
C:\MyProg.exe "file://localhost/C:/Documents and Settings/stuart/This File.txt"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%HttpFile%
This variable will be replaced with the full path name, including drive specifier, of the current file preceded by 'http://localhost/'

Example:
C:\MyProg.exe "%HttpFile%"

Becomes:
C:\MyProg.exe "http://localhost/C:/Documents and Settings/stuart/This File.txt"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%PHPFile%
If the start of the path of the current file matches the value of the setting in 'Settings|Program Settings|Internet|Document Root" then the variable will be replaced with the value "http://localhost/" + the path relative to Document Root. Otherwise the variable equates to %File%.

Example:
Assume the Document Root is set to 'C:\Inetpub\wwwroot' and the current file path is 'C:\Inetpub\wwwroot\test.htm'

C:\MyProg.exe "%PHPFile%"

Becomes:
C:\MyProg.exe "http://localhost/text.htm"

Example:
Assume the Document Root is set to 'C:\Inetpub\wwwroot' and the current file path is 'C:\Inetpub\wwwroot\test.htm'

C:\MyProg.exe "%PHPFile%"

Becomes:
C:\MyProg.exe "http://localhost/MySite/text.htm"

Example:
Assume the Document Root is set to 'C:\Inetpub\wwwroot' and the current file path is 'C:\temp\test.htm'

C:\MyProg.exe "%PHPFile%"

Becomes:
C:\MyProg.exe "C:/temp/text.htm"

Note: The quotation marks around the variable name are required if the path name includes spaces.

%Input%
This variable will be replaced with the value the user types in to the prompt that is displayed. Note: If 'Cancel' is pressed when the prompt is displayed the command will not be run. To run the command with no value delete any text in the prompt's input box and press 'Ok'


 Spell Check Options

Details about spell check you can find here.

Spell check settings

Dictionary
you can choose one of the installed dictionaries. You may need to download a dictionary from the website.

Show As:
style of word underlining (MS word, Corell WordPerfect)

Ignore One-char Words

Ignore Words with Numbers

Auto corrections

How it works ?
Auto Correct works with a list of word pairs. Word on left side will be replaced with word or phrase on right side of list.
You write word followed by some word delimiter (space, symbol, ...). If the word is found in the list, it will be replaced with the replacement word (or phrase).

How and where can I use it ?
If you regularly make mistakes with some words (changed letters, missing letters,..). PSPad can auto correct these mistakes. teh ==> the; theer ==> there
Next case is to increase speed of writing source code. If you have some long name functions, e.g. IncludeTrailingBackSlash you can simply write itb and PSPad will "correct it" by writing out the full function name.

Where is list stored ?
Word list is in text file named AutoCorr.TXT in the same directory as PSPad.EXE or user profile directory, if MultiUser environment is set on. Structure of this file is simple:
what replace|result


Window Menu

 Menu - Window

projfilemain Set as Main file for Compiler Ctrl+M
file marked as "main" is always send to external applications or compiler, if one is set. Otherwise, the active file is sent. Setting file as main also makes it easier to see its file tab.

logwindow Show / Hide LOG Ctrl+L
in LOG window you see compilation results, find in files results, ...

Jump to Editor / LOG Alt+L
you can switch focus between LOG window and editor window

AutoRefresh Window
The window is marked when autorefresh is ON for the active file. (Refresh icon on status bar and different color in file panel). When AutoRefresh is on, the file is automatically reopened after given interval in seconds (Program Settings / Editor / Auto Refresh [s] ). Refreshing is provided only if document is active. When you click on another file tab, you are not interrupted. When the AutoRefreshed document is once again selected and active, then refreshing will resume. You are prompted for changes: "File 'x was changed. After reopen, changes will be lost. Continue?" If you say no, the file is not reopened and your changes will not be lost. But you will be prompted again after the inteval.

Next window CTRL+Tab
Previous window SHIFT+CTRL+Tab

Cascade
Tile vertical
Tile horizontal
Arrange

(Your open file list shows down here)


 User Highlighters

Name
Highlighter name

File types
Comma delimited extension list of file types (.bat, .log, ...)

Comment style
Specification of comment styles used in your language. You can combine several styles together.

(* *) - (* comments *)
{} - { comments }
// - // comment to end of line
/* */ - /* comments */
; - ; comment to end of line
* && - * (first char on line) or chars && comment to end of line
# - # comment to end of line
@ - @ comment to end of line
/ - / from line begin or after ";" char comment to end of line
REM - REM on line begin comment to end of line
! - ! comment to end of line
% - % comment to end of line
' - ' comment to end of line
-- - -- comment to end of line
" - " comment to end of line or to the next occurrence of " or ; char

Strings
Choose string identifiers of double and / or single quotes

Preprocessors
Contains special parts of code, usually compiler directives, usually preceeded with a # symbol.

HTML
indicates, if highlighter is for HTML. With this option you will able use HTML tools

Key words
List of keywords in your file type
Conditions:
· each word on separate line
· upper case (auto converted during highlighter saving)
· in alphabetical order (sorted during highlighter saving)

Reserve words
The same meaning as Key words. You can set different color for Key words and Reserved words

Load
Load highlighter definition. Subdirectory .\Syntax is required and to this directory it is saved

Save
Saves syntax definition file to the .\Syntax subdirectory.

How to create user highlighter

Go to the menu Settings / User Highlighter

Highlighter definition
Fill highlighter name
Fill file extensions
Select comments type
Select string type
Fill key word (& reserved word) list
Save highlighter

How to tell PSPad to use new highlighter
Menu Settings / Highlighter settings
Go to tab named "Specification"
On the left (highlighter) list, click on one of three bolded highlighters
On the right side is list of user highlighters. Select the one you created and click on it.
That's all.

Color settings for highlighter
If you need change the font and colors for highlighter attributes, go to tab "Colors" and set the colors and font styles you want. If active document corresponds with highlighter you are modifying, you will immediately see the changes you make.

Definition file structure description:

;comments, are ignored
;bold in brackets are section name
[Settings]
;file  name
Name=OtherCad
;List of file extension
FileType=*.prg,*.bpk
;comments settings (optional) 1 = Yes, 0 = No
ANSIComment=0
PasComment=0
CComment=0
SpecComment=1
BasComment=0
SingleQuote=0
Preprocessors=0
....
;List of keywords and reserved words
; Include the = sign at the end of each word.
[KeyWords]
ABS=
ACOS=
ATN=
BOOLEAN=
[ReservedWords]
BOOLEAN=
INTEGER=
STRING=